现在有dept这个表,有三列分别是:deptno,dname,loc
我想根据传进去的no查询一条记录,存储过程如下:
create or replace procedure pro_select
(
no in number,
name out varchar2,
loc out varchar2
)
as
begin
select dname,loc into name,loc from dept where deptno=no;
end dept;
为什吗不会出现“创建的过程带有编译错误”,错就错吧,可还能创建?
------解决方案--------------------
- SQL code
create or replace procedure pro_select(v_no in number,v_name out varchar2,v_loc out varchar2)as cursor1 sys_refcursor; sqlstr varchar(100);begin sqlstr := 'select dname,loc from dept where deptno=' || v_no; open cursor1 for sqlstr; loop fetch cursor1 into v_name,v_loc; if cursor1%notfound then exit; end if; end loop;end pro_select;
------解决方案--------------------