oracle 存储过程报错: Error: PLS-00103: 出现符号 "ON"在需要下列之一时::= . ( @ % ;

procedure ceshi as
begin
dbms_output.put_line('测试用例');
comment on table PRO is '记录表';
end;

第1个回答  2013-05-21
create or replace procedure ceshi
as
v_sql varchar2(2000);
begin
v_sql:='comment on table PRO is ''记录表''';
execute immediate v_sql;
dbms_output.put_line('测试用例');
end;追问

v_sql:='comment on table PRO is ''记录表''';
执行这句的时候会报错误:
ORA-01780:要求文字字符串

这要怎么修改呢?

追答

我这没问题的呀
系统参数有问题吧
不行你把记录表那几个字换成几个英文试试

追问

我把符号也成英文的双引号了,嗯,这样改正确,谢谢啦,以及thain0 (*^__^*) 。。

追答

晕,本来就应该是英文的双引号呀~~~

追问

写成这样的了: ""

追答

哎,你直接复制多好呀

追问

嗯, 区别就在下面,我中文用上面的引号给引着了,所以报错了,谢谢

追答

好好学习,天天向上
别再追问了,再追问你该扣财富值了

本回答被提问者采纳
第2个回答  2013-05-21
ddl语句是不能直接出现在存储过程中的
可以把comment on table PRO is '记录表'; 这句改成:
str_ sql := 'comment on table PRO is ''记录表''';
execute immediate str_sql;追问

str_ sql := 'comment on table PRO is ''记录表''';
执行这句的时候会报错误:
ORA-01780:要求文字字符串

这里应该怎么改啊~~~

追答

楼上那位已经都改出来了

追问

谢谢啦\(^o^)/~

oracle 存储过程报错: Error: PLS-00103: 出现符号 "ON"在需要下列之一...
v_sql:='comment on table PRO is ''记录表''';execute immediate v_sql;dbms_output.put_line('测试用例');end;

存储过程报错:PLS-00103: 出现符号 "("在需要下列之一时:
问题属于入参类型错误:plsql中procedure的入参类型,如果是number或varchar2的话不需要定义长度。否则编译不能通过。plsql中procedure的入参类型,如果是number或varchar2的话不需要定义长度。否则编译不能通过。改正这样:create or replace procedure temp_prod_inst_ppp (vpn_lan_id in number) 把numbe...

PLS-00103: 出现符号 ""在需要下列之一时——如何解决?
我刚刚遇到这个问题。是这样的,排除你采纳的那个答案的话,还有可能是半角全角空格的问题。若你的程序是从网上当下来修改的话,就可能有这个问题,把代码删掉重新自己手打一下就好了。

在oracle存储过程时,出现错误:pls-00103:出现符号"insert"在需要下列...
as 后要写begin CREATE OR REPLACE PROCEDURE Bomcopy(Oldid VARCHAR2,Newid VARCHAR2,USER VARCHAR2,Company VARCHAR2) AS begin INSERT Cc_Record_Bom SELECT Sys_Guid(),Item,Item_Class,Item_d,Item_d_Class,Net_Qty,Waste_Qty,Total_Qty,Bom_Ver,Start_Date,End_Date,Newid,Remark...

oracle存储过程中提示 错误:PLS-00103: 出现符号 "FOR"在需要下列之一...
2012-09-11 在oracle存储过程时,出现错误:pls-00103:出现... 3 2014-11-13 ORACLE存储过程报错,出现符号)在需要下列之一时 2 2012-09-17 oracle创建存储过程编译错误 :PLS-00103: 出... 2013-04-21 oracle触发器错误:PLS-00103: 出现符号 ""... 10 2012-09-17 oracle存储过程编译错误:PLS-00103:...

...创建触发器时 错误(2,10): PLS-00103: 出现符号 "="在需要下列之一...
YW_KCKFOR EACH ROWDECLARE cctj !='null' -- 这里有问题。这里是定义变量的 cctj varchar2(30);BEGIN IF UPDATING then -- 这里也有问题 if 需要与 then 及 end if配对 而且语句需要;结束 update yw_kck set stockid = '01' where cctj='常温储存' ; end if;END;

创建存储过程编译错误:PLS-00103: 出现符号 "end-of-file"在需要下列之 ...
少 ;号 或者结束语句

ORACLE 存储过程报错 PLS-00103 求查错
其中username ,counter ,rolename 是传入参数,传入参数不能赋值,即第7、8行语句有问题,建议删除。建议在plsql工具中编辑,方便。

oracle触发器出错。我不会pl\/sql,不知道语句规则,请各位帮我看看错误原...
XH2 NUMBER(3);9\/8 PLS-00103: 出现符号 "_"在需要下列之一时:_TALLY 解决方法 不能以下划线开头 10\/10 PLS-00103: 出现符号 "="在需要下列之一时:XH1=XCXH;解决方法 XH1:=XCXH;12\/51 PLS-00103: 出现符号 "("在需要下列之一时:9.2的版本以下的ROW_NUMBER() OVER(ORDER...

oracle创建存储过程 编译错误:PLS-00103: 出现符号 "end-of-file"在需...
start_date datet;这个数据该是date 这样试试 CREATE OR REPLACE Procedure Up_Cc_Stand_Bom_Io As Cursor Cor Is Select Item,Item_Class,Item_d,Item_d_Class,Net_Qty,Start_Date,End_Date,Remark From Cc_Stand_Bom_Temp_Io;Item Varchar2(128);Item_Class Varchar2(1);Item_d ...

相似回答