首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

大侠:PLS-00103: 出现符号 ""在需要下列之一时

2013-10-13 
求助大侠:PLS-00103: 出现符号 .在需要下列之一时错误信息如下:PROCEDURE SCOTT.SP_FORMATDATE 编译错误

求助大侠:PLS-00103: 出现符号 "."在需要下列之一时
错误信息如下:
PROCEDURE SCOTT.SP_FORMATDATE 编译错误

错误:PLS-00103: 出现符号 "."在需要下列之一时:
        * & = - + ; < / > at in is
          mod remainder not rem <an exponent (**)> <> or != or ~= >= <=
          <> and or like like2 like4 likec between || member
          submultiset
       符号 "*在 "." 继续之前已插入。
行:7
文本:strsql:='update '||v_tblnm||' SET launchdate =replace(launchdate,'.','')';

错误:PLS-00103: 出现符号 "END"在需要下列之一时:
        . ( * @ % & = - + ; < / >
          at in is mod remainder not rem return returning
          <an exponent (**)> <> or != or ~= >= <= <> and or like like2
          like4 likec between into using || multiset bulk member
          submultiset
       符号 ";在 "END" 继续之前已插入。
行:11
文本:end

create or replace procedure sp_formatdate(
i_tblname varchar2)is
v_tblname varchar2;
v_strsql varchar2;
v_strslct varchar2;
begin
  v_tblname:=i_tblname;
  v_strslct:='select launchdate from '||v_tblnm;
  strsql:='update '||v_tblnm||' SET launchdate =replace('||v_strslct||','.','')';

  --update tb_dw_tempdata set launchdate=replace(launchdate,'.','');  --修改起飞日期,将‘.’去掉
  execute immediate strsql
  --commit;
end
end sp_formatdate;
存储过程 sql
[解决办法]
14行end后面没有分号。
[解决办法]
strsql:='update '
[解决办法]
v_tblnm
[解决办法]
' SET launchdate =replace('
[解决办法]
v_strslct
[解决办法]
',''.'','''')';
另外 14行后面加个分号

热点排行