oracle同sql server的procedure是不一样的。
在sql server下述语句完全正确。
create procedure usp_test
as
begin
select * from tablename
end;
但在oracle是运行不了的。在oracle的precedure要么使用cursor返回单个值(含单条记录),要么就使用ref cursor返回记录集。
create or replace usp_test(cv_results in out sys_refcursor)
is
begin
open cv_results for select * from tablename;
end;
在sqlplus调用:
VARIABLE X REFCURSOR
EXEC authors_sel(:x)
print x
本文作者:网友 来源:网络
CIO之家 www.ciozj.com 微信公众号:imciow