用一条预处理语句处理多条相似的数据,
数据库只创建一次执行计划,
节省了语句的编
译和优化时间。可以按如下步骤执行:
步骤1 调用Connection 的prepareStatement 方法创建预编译语句对象。
Connection conn = DriverManager.getConnection("url","user","password"); PreparedStatement
pstmt = conn.prepareStatement("INSERT INTO customer_t1 VALUES (?)");
步骤2 针对每条数据都要调用setShort 设置参数,以及调用addBatch 确认该条设置完毕。
pstmt.setShort(1, (short)2);
pstmt.addBatch();
步骤3 调用PreparedStatement 的executeBatch 方法执行批处理。
int[] rowcount = pstmt.executeBatch();
步骤4 调用PreparedStatement 的close 方法关闭预编译语句对象。
pstmt.close();
在实际的批处理过程中,通常不终止批处理程序的执行,否则会降低数据库的性能。因
此在批处理程序时,
应该关闭自动提交功能,
每几行提交一次。
关闭自动提交功能的语句为:
conn.setAutoCommit(false);
GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
81
----结束