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

Oracle11g 创建存储过程报错,请帮小弟我看看

2013-10-27 
Oracle11g 创建存储过程报错,请帮我看看~创建存储过程的语句:create or replace procedure hello(hid in v

Oracle11g 创建存储过程报错,请帮我看看~
创建存储过程的语句:
create or replace procedure hello(hid in varchar(2),hmain_id out varchar(20))
as
begin
select main_id into hmain_id from tb_main where id=hid;
end hello;
/
报错以下错误:请问为什么啊?该怎么解决?
Oracle11g 创建存储过程报错,请帮小弟我看看
[解决办法]
create or replace procedure hello(hid in varchar(2),hmain_id out varchar(20))
改为,不要指定长度
create or replace procedure hello(hid in varchar,hmain_id out varchar)


[解决办法]
set serveroutput on
[解决办法]

引用:
Quote: 引用:

create or replace procedure hello(hid in varchar(2),hmain_id out varchar(20))
改为,不要指定长度
create or replace procedure hello(hid in varchar,hmain_id out varchar)

谢谢,已经是成功了。
另外想问一下,在调用存储过程的时候,执行下面的命令。
declare
hmain_id varchar2(20);
begin
hello('01',hmain_id);
DBMS_OUTPUT.PUT_LINE(hmain_id);
end;
/
标红色的句子是将hmain_id的结果输出在屏幕上的意思吗?可是我在执行这条命令时并没有将hmain_id的结果输出。只显示了“PL/SQL已成功完成”


如果你在PLSQL developer的SQL window中运行,点击上边的output选项卡,就可以看到输出了。
如果在command window中执行,在PLSQL 语句块钱加上一行 set serveroutput on

热点排行