PLS-00103:遇到符号

Posted

技术标签:

【中文标题】PLS-00103:遇到符号【英文标题】:PLS-00103: Encountered the symbol 【发布时间】:2012-09-19 21:38:37 【问题描述】:

我正在尝试编译这个函数

CREATE OR REPLACE FUNCTION sql_error_msg (err_num PLS_INTEGER) 
RETURN VARCHAR2 IS 
BEGIN 
RETURN sqlerrm(-err_num); 
EXCEPTION 
WHEN OTHERS THEN 
RETURN NULL; 
END sql_error_msg
/

但我收到此错误:

FUNCTION SQL_ERROR_MSG
On line:  8
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:

   ;
The symbol ";" was substituted for "end-of-file" to continue.

【问题讨论】:

【参考方案1】:

只需在函数末尾添加;即可。

 END sql_error_msg;
/

【讨论】:

【参考方案2】:

我试图使用<jdbc:initialize-database> 标记执行“创建或替换”函数的PL/SQL。我收到了 PLS-00103,结果发现目前不支持这种方式的 PL/SQL。

您必须以不同的方式执行脚本。

我将按照http://www.coderanch.com/t/298532/JDBC/databases/run-SQL-Script-file-JDBC 直接尝试使用 JDBC 并从那里制定解决方案。

【讨论】:

以上是关于PLS-00103:遇到符号的主要内容,如果未能解决你的问题,请参考以下文章

PLS-00103:遇到符号“COLUMNS”

PLS-00103:遇到符号“,”

错误(30,11):PLS-00103:遇到符号更新错误

获取 PLS-00103:在创建包时遇到符号“/”错误

PLS-00103:遇到符号

ORA-06550:第 13 行,第 4 列:PLS-00103:遇到“UPDATE” ORA-06550:第 15 行,第 3 列:PLS-00103:遇到符号“END”