在一个表(jdbc / connector-mysql数据库)中插入1000行的最佳/最省时的方法是什么?(它是一个缓冲区,每次充满时都需要转储到数据库中)
1-一个自动生成/固定的SQL语句?
2 for (int i = 0; i<1000; i++) { con.prepareStatement(s.get(i)); } con.commit();
for (int i = 0; i<1000; i++) { con.prepareStatement(s.get(i)); } con.commit();
3-存储过程
4-通过文件批量插入数据?
5-(您的解决方案)
LOAD DATA INFILE语句可能是提高性能的最佳选择。(来自上面的选项列表中的#4)尽管由于您需要创建中间文件,可能会花费更多的代码来完成您的任务,但将其保存到服务器,然后调用LOAD DATA将其保存到您的数据库中。
MySql帮助页面引用:
LOAD DATA INFILE语句以非常高的速度将行从文本文件读入表中。