问题是,我们从
Java应用程序中将大量记录(超过一百万)插入到单个表中.这些记录是由Java代码创建的,它不是从另一个表移动,所以INSERT / SELECT将不会有帮助.
@H_301_11@解决方法
@H_301_13@
使用
BULK INSERT – 它是专为您正在要求的设计,并显着提高插入速度.
目前,我的瓶颈是INSERT语句.我正在使用PreparedStatement来加快进程,但是在普通服务器上每秒不能获得超过50个recods.表完全不复杂,没有定义索引.
这个过程需要太长时间,而且花费的时间会产生问题.
我可以做些什么来获得最大速度(每秒INSERT)?
另外,(为了防止你真的没有索引),你可能还需要考虑添加一个索引 – 一些索引(大多数是主键上的索引)可以提高插入的性能.
您应该能够插入记录的实际速率将取决于确切的数据,表结构以及sql服务器本身的硬件/配置,因此我无法真正给您任何数字.