为什么 mysql connector/j 的 rewriteBatchedStatements 默认为 false?

why does rewriteBatchedStatements default to false for mysql connector/j?

mysql jdbc 驱动程序 has a property called rewriteBatchedStatements that, when set to true can improve batch inserts significantly,但必须明确打开。

我现在必须为多个项目执行此操作,但找不到任何必须手动打开它的充分理由。

为什么这不是默认值?

连接 属性 rewriteBatchedStatements 提供了一个不符合 JDBC 的特性。并非所有语句都可以重写,并且可能会产生意想不到的结果。特别是关于处理错误和返回更新计数。

另请注意,rewriteBatchedStatements 可以修改原始 SQL 字符串,而不仅仅是查询的简单串联,这在许多情况下是不期望或不可取的。

出于这些原因以及许多其他原因,此 属性 默认为 false。