Ant 执行sql脚本 出现语法错误

今天准备在java中,利用ant来执行sql脚本,进行数据的更新。运行过程中,出现了特别常见的sql语法错误。可以经过检查没有错误,为了保证没有错误,还特地在mysql的控制台直接用source来执行了一次,同样没有错误。这个问题比较郁闷,最后终于在http://www.zzzxo.com/q/answers-ant-sql-insert-statement-fails-on-strings-workaround-12469496.html找到了一些线索,作者说是因为“;”,也就是分号的问题,让分号和语句不在同一行,就不会产生错误。

例如:

DROP TABLE IF EXISTS `MainActor`;

改写成:

DROP TABLE IF EXISTS `MainActor`

;

变成两行后,也就是将分号单独放入另一行后,问题消失,数据更新成功。

估计是ANT的内部进行数据切分时出现的问题,如果哪位大神有时间阅读相关源码,多多交流。

你可能感兴趣的:(SQL,Java,数据库,SQL,脚本,Ant,JAVA)