我有一个包含以下内容的文件:
- KERNEL72 - SWIFT银牌改变开始
/ *
删除同义词ispkss_vals
/为ispks_vals创建同义词ispkss_vals
/* / - KERNEL72 - SWIFT白银更改在以下行
之后结束为ispks_vals创建或替换同义词ispkss_vals /
这是在SQL Plus中正确编译的。但是在使用ANT进行编译时,我收到以下错误:
[sql] Failed to execute:
[sql] - KERNEL72 - SWIFT白银更改开始 [sql] / *
[sql] drop synonym ispkss_vals
[sql] java.sql.SQLException:无效的SQL类型
[sql]执行失败:
[sql]为ispks_vals创建同义词ispkss_vals [sql] java.sql.SQLSyntaxErrorException:ORA-00955:现有对象已使用name [sql]执行失败:
[sql] * / - KERNEL72 - SWIFT白银更改在以下行之后结束 [sql]为ispks_vals创建或替换同义词ispkss_vals [sql] java.sql.SQLSyntaxErrorException:ORA-00900:无效的SQL语句
我使用以下ANT脚本进行编译:
<sql driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@10.184.1.13:1521:UPP"
userid="${UsernameB}"
password="${PasswordB}"
onerror="continue"
strictDelimiterMatching="false"
delimiter="/"
keepformat="yes">
请告知ANT编辑为何不合适。
答案 0 :(得分:2)
问题可能是您使用/
作为语句分隔符并尝试使用/* ... */
发表评论?
它可能将注释打开和关闭视为分隔符,创建没有意义的sql语句。 (一个会从*
等开始。)