在使用 Java ReadyStatemen 执行一批 SQL 命令后,参数值是否会自动清除?
2022-09-02 23:57:14
我有以下代码片段:
PreparedStatement preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < 100000; i++) {
preparedStatement.setObject(1, someValue);
preparedStatement.addBatch();
if ((i + 1) % 100 == 0) {
preparedStatement.executeBatch();
}
}
所以我想用不同的值执行一个命令大约100 000次。我的问题是:在每次调用 executeBatch() 后,PreparedStatement 中的参数是否被清除,或者我是否必须在调用 executeBatch() 后显式调用 preparedStatement.clearParameters()以确保只执行最后 100 个命令?