executeBatch()是否也清除命令列表



Statement.executeBatch()的文档对此并不清楚,但我认为调用它将以与clearBatch()相同的方式清空Statement对象的当前SQL命令列表。我还假设PreparedStatement也是如此。

我想在调用Statement.executeBatch()之后可以继续使用Statement,即添加另一批命令并执行它们。

虽然executeBatch的API文档中没有明确提到,但行为由JDBC 4.3规范中的14.1.2成功执行:部分规定

executeBatch返回后,语句的批处理将重置为空。

尽管这是在名为"成功执行"的部分中指定的,但这也是不成功执行的预期行为。

简而言之,当您调用executeBatch()时,当前一批语句将提交到数据库服务器并被清除。

相关内容

  • 没有找到相关文章

最新更新