加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在SQL中将非常大量的记录插入到表中的最快方式

发布时间:2020-12-14 16:34:01 所属栏目:Java 来源:网络整理
导读:问题是,我们从 Java应用程序中将大量记录(超过一百万)插入到单个表中.这些记录是由Java代码创建的,它不是从另一个表移动,所以INSERT / SELECT将不会有帮助. 目前,我的瓶颈是INSERT语句.我正在使用PreparedStatement来加快进程,但是在普通服务器上每秒不能获
问题是,我们从 Java应用程序中将大量记录(超过一百万)插入到单个表中.这些记录是由Java代码创建的,它不是从另一个表移动,所以INSERT / SELECT将不会有帮助.

目前,我的瓶颈是INSERT语句.我正在使用PreparedStatement来加快进程,但是在普通服务器上每秒不能获得超过50个recods.表完全不复杂,没有定义索引.

这个过程需要太长时间,而且花费的时间会产生问题.

我可以做些什么来获得最大速度(每秒INSERT)?

数据库:MS SQL 2008.应用程序:基于Java,使用Microsoft JDBC驱动程序.

解决方法

使用 BULK INSERT – 它是专为您正在要求的设计,并显着提高插入速度.

另外,(为了防止你真的没有索引),你可能还需要考虑添加一个索引 – 一些索引(大多数是主键上的索引)可以提高插入的性能.

您应该能够插入记录的实际速率将取决于确切的数据,表结构以及SQL服务器本身的硬件/配置,因此我无法真正给您任何数字.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读