create or replace procedure sp_test(name varchar2)
as
feng varchar := '12'
begin
insert into ruan values(1,name);
insert into ruan values(2,feng);
dbms_output.put_line('333');
exception
when others then goto fu;
end;
as
feng varchar := '12'
begin
insert into ruan values(1,name);
insert into ruan values(2,feng);
dbms_output.put_line('333');
exception
when others then goto fu;
end;
解决方案 »
- isqlplussvc.exe-应用程序错误
- oracle中如何给一个字段赋多个值?
- 对SDO_GEOMETRY类型数据的读取和导入
- oracle菜鸟请高人指点如何学习oracle!
- 如何用exp导出远程数据库?
- 这条语句应该怎么写啊?谢谢
- 能不能实现这样的有趣的功能?
- 各路高手,我想在oracle的表中修改单据号D00000026~D0000798(字符类型)这些记录的的审核日期,有没有比较方便快捷的方法!
- 一个朋友问起:如何sqlplus命令用查出服务器ip地址?
- 不用框架也能写公司要的功能么?
- 我在安装ORACLE 9i 3CD的那张碟中,出现了一个这种错误。我无法解决
- Oracle的远程连接数据库的连接字符串怎么写?
create or replace procedure sp_test(name varchar2)
as
begin
feng varchar := '12';
<<fu>>
insert into ruan values(1,name);
insert into ruan values(2,feng);
dbms_output.put_line('333');
exception
when others then goto fu;
end;
还是有这个错误出现
Compilation errors for PROCEDURE SYS.SP_TESTError: PLS-00103: Encountered the symbol "VARCHAR" when expecting one of the following:
:= . ( @ % ;
The symbol "." was substituted for "VARCHAR" to continue.
Line: 4
Text: feng varchar := '12';
as
begin
feng varchar2(10) := '12';
<<fu>>
insert into ruan values(1,name);
insert into ruan values(2,feng);
dbms_output.put_line('333');
exception
when others then goto fu;
end;,
PL/SQL中,只有VARCHAR2类型,没有VARCHAR类型
is
declare feng varchar2;
begin
.....
end
as
begin
feng varchar2(10) := '12';
<<fu>>
insert into ruan values(1,name);
insert into ruan values(2,feng);
dbms_output.put_line('333');
exception
when others then goto fu;
end;,
刚才忘记了改变存储过程变量中的变量类型赋长度
feng varchar := '12';
这样申明还是不行,到底问题出在哪里啊?
多试试就知道问题出在哪!
还是不行.
就逐行注释,知道找到问题的语句.
is
feng varchar2(10) := '12';
begin
dbms_output.put_line('333');
end;这样使对的,已经测试过了
而下面的feng是参数,是你存储过程中使用到的参数,这个是需要定义长度的