java—数据库批量插入数据
在Java中,你可以使用JDBC来批量插入数据到数据库。以下是一个使用PreparedStatement的例子,它通常用于批量操作来提高性能:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class BatchInsertExample {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/yourdatabase";
String username = "yourusername";
String password = "yourpassword";
String insertSQL = "INSERT INTO yourtable (column1, column2) VALUES (?, ?);";
try (Connection connection = DriverManager.getConnection(url, username, password);
PreparedStatement preparedStatement = connection.prepareStatement(insertSQL)) {
connection.setAutoCommit(false); // 禁用自动提交
for (int i = 0; i < 1000; i++) {
preparedStatement.setInt(1, i);
preparedStatement.setString(2, "value" + i);
preparedStatement.addBatch(); // 添加到批处理
}
int[] affectedRows = preparedStatement.executeBatch(); // 执行批处理
connection.commit(); // 提交事务
System.out.println("Batch insert complete. Affected rows: " + affectedRows.length);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
确保你已经添加了JDBC驱动的依赖到你的项目中,并且替换了yourdatabase
, yourtable
, yourusername
, yourpassword
以及column1
, column2
为你实际的数据库信息和表结构。这个例子使用了MySQL数据库,如果你使用其他数据库,请更换相应的JDBC URL和驱动。
评论已关闭