2

我有一个 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”消息。

请帮助解决问题。

4

1 回答 1

0

我遇到了完全相同的问题,原来我的 sql 文件中有以#开头的注释。替换# for * -- *后一切正常。

于 2013-05-31T13:28:48.733 回答