我们知道,开启“rewriteBatchedStatements=true”之后,mysql的批量才正式生效。但是,一条两条的新增也是批量吗?
经过抓包发现,批量插入四条触发器,会分四个包,就是走单条。抓包详情如下:
超过四条,就走批量。
此处,我遇到了一个小坑,就是批量报错。经过抓包发现,代码中我写的是完整的sql,以分号“;”结尾, 但是,批量的时候,sql在拼装的时候,会默认以“;”拼接,造成双分号。
小结:走批量的sql慎用分号结尾,以免造成双分号导致的批量失败。
我们知道,开启“rewriteBatchedStatements=true”之后,mysql的批量才正式生效。但是,一条两条的新增也是批量吗?
经过抓包发现,批量插入四条触发器,会分四个包,就是走单条。抓包详情如下:
超过四条,就走批量。
此处,我遇到了一个小坑,就是批量报错。经过抓包发现,代码中我写的是完整的sql,以分号“;”结尾, 但是,批量的时候,sql在拼装的时候,会默认以“;”拼接,造成双分号。
小结:走批量的sql慎用分号结尾,以免造成双分号导致的批量失败。