代码中使用 MySQL ODBC 执行类似以下SQL语句(部分代码用...省略了):
DELETE FROM ...; INSERT INTO ...;
执行失败,错误信息如下:
[42000] 1064 [[MySQL][ODBC 5.1 Driver][mysqld-5.0.77]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO ...' at line 1]
把这条语句拿出来手动执行却正常,网上查了好久也没能找出原因。
后来仔细研究发现,报错是从 'INSERT INTO' 开始的,这句之前还有一句'DELETE FROM',难道是由于不支持一次执行多条语句?于是打开 MySQL Connector/ODBC Data Source Configuration 在 Connection 中找到一条设置 Allow multiple statements,勾上此项后重试,问题解决。