我想知道哪种方法可以在数据库中插入多行:
for( int x = 0; x < y.length; x++ ) { insertRowsIntoDatabase( valuesHere ); }
我的数据包含8列和50行。
答案 0 :(得分:2)
更好的方法是进行批量插入,而不是逐行插入行。
for (String query : queries) {
statement.addBatch(query);
}
statement.executeBatch();
答案 1 :(得分:1)
是的,您只能编写一个查询来插入所有值:
String query="insert into table1 (First,Last) values";
for(; ;)
{
query=query+"('Fred','Smith'),";
}
-----You can write your database insertion code here----
或者您可以使用addBatch()和executeBatch();方法也......
答案 2 :(得分:1)
尽可能使用一个查询。这有许多优点:
无论如何,对于任何DBMS来说,8列和50行都非常快速且易于处理,但您的数据可能会在以后增长,因此您希望使用最佳方法。
答案 3 :(得分:1)
您可以使用bulk insert
将所有值保存在文本文件中并使用。
BULK INSERT STUDENT
FROM ‘D:\STUDENTS_LIST.txt’
WITH ( FIELDTERMINATOR = ‘,’, ROWTERMINATOR = ‘\n’ )
答案 4 :(得分:0)
考虑使用单个Prepared Statement Batch,将多个数据集作为批处理。
(注意:并非所有JDBC驱动程序都支持此操作并且完全遵循规范。)