我有一个SQL脚本,想要在ANT任务中应用它。 此脚本清除架构,创建新表和视图。
ANT定义的任务如下:
<sql driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://host:3306/smth"
userid="smth"
password="smth"
expandProperties="false"
autocommit="true"
src="all.sql"
>
</sql>
当此任务启动时,它会在日志中显示清除和创建表。但是当它尝试创建第一个视图时,它会失败:
Failed to execute: CREATE VIEW component... AS SELECT component_raw.id AS
MySQLSyntaxErrorException: Table 'component_raw' doesn't exist
我不知道为什么它在这里失败了。 从MySQL查询浏览器运行此all.sql不会出错。 当我使用-v选项启动ANT时,我没有看到任何“COMMIT”消息..
请帮助解决问题。
答案 0 :(得分:0)
我有完全相同的问题,事实证明我在我的sql文件中有#开头的评论。 将#替换为* - * 后,一切正常。