读书人

PLS-00103: 出现符号 END在需要下列之

发布时间: 2014-01-28 21:28:50 作者: rapoo

请问以下语句错在什么地方?
declare
strSYSJ varchar2(10);
statement varchar(2000);
begin
strSYSJ:=to_char(&num);
statement:='SELECT * FROM kehuxinxi where weijibianma=strSYSJ';
execute immediate statement
end;

提示:ERROR 位于第 8 行:
ORA-06550: 第 8 行, 第 3 列:
PLS-00103: 出现符号 END在需要下列之一时:
. ( * @ % & = - + ; < / >
at in is mod not rem return returning <an exponent (**)>
<> or != or ~= >= <= <> and or like between into using ||
bulk
符号 ";" 被替换为 "END" 后继续。

------解决方法--------------------------------------------------------
declare
strSYSJ varchar2(10);
statement varchar(2000);
begin
strSYSJ:=to_char(&num);
statement:='SELECT * FROM kehuxinxi where weijibianma=:1';
execute immediate statement using strSYSJ;
end;
------解决方法--------------------------------------------------------
SELECT * FROM kehuxinxi where weijibianma=to_char(&num);

        

读书人网 >oracle

热点推荐