ANT执行ORACLE存储过程

ANT执行ORACLE存储过程
写个小工具来管理项目中的SQL脚本文件,当主要代码调试成功以后,使用ANT来处理时候遇到个问题,每次执行都会报如下错误:
BUILD FAILED
Java.sql.SQLException: ORA-06550: 第 1 行, 第 33 列:
PLS-00103: 出现符号 "end-of-file"在需要下列之一时:
 := . ( @ % ; not

明明都是正确的为什么使用ANT就会报错呢,查了一下资料,发现ANT默认使用分号来作为一条SQL语句结束。导致存储过程中的语句被分开执行了。
解决办法设置delimiter为"/":

<target name="runsqls" depends="init" description="run sql script">
     <sql driver="${jdbc.driver}" url="${jdbc.url}" userid="${jdbc.username}" password="${jdbc.password}"  delimiter="/">
      <classpath refid="classpath"/>
   <fileset dir="sql-scripts">
    <include name="*.sql"/>
   </fileset>
  </sql>
</target>

现在ok了,尽情享受吧。

你可能感兴趣的:(ANT执行ORACLE存储过程)