无法从 ant的sql任务
中运行SQLBEGIN
DBMS_AQADM.CREATE_QUEUE_TABLE(
queue_table => 'MY_QUEUE',
queue_payload_type => 'sys.aq$_jms_map_message');
DBMS_AQADM.CREATE_QUEUE(
queue_name => 'MY_QUEUE',
queue_table => 'MY_QUEUE');
DBMS_AQADM.START_QUEUE (
queue_name => 'MY_QUEUE');
END;
/
有以下错误:
CreateMyQueue:
[sql] Executing resource: /u1/bin/sql/createMyQueue.sql
[sql] Failed to execute: BEGIN DBMS_AQADM.CREATE_QUEUE_TABLE( queue_table => 'MY_QUEUE', queue_payload_type => 'sys.aq\$_jms_map_message')
BUILD FAILED
/u1/bin/.tools/build.xml:194: java.sql.SQLException: ORA-06550: line 1, column 118:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:
:= . ( % ;
SQL有什么问题?
答案 0 :(得分:3)
这是解决方案!
http://www.javaddicts.net/blog/index.php/2005/06/13/executing-oracle-plsql-from-ant/
应使用以下参数
的定界符= “/”强>
的 delimitertype = “行”强>
<project name="SWPDEPLOYMENT" basedir="." default="all">
<target name="createMyQueue">
<sql driver="oracle.jdbc.driver.OracleDriver"
url="${sqlurl}"
userid="${userid}"
password="${pwd}"
print="yes"
delimiter="/"
delimitertype="row"
>
<fileset dir=".">
<include name="createMyQueue.sql"/>
</fileset>
</sql>
</target>