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

ORACLE存储过程写法

2014-01-28 
由于我第一次写ORACLE存储过程,对很多东西都不理解,无从下手。我在网上找了找,说写存储过程都需要建包,应该

由于我第一次写ORACLE存储过程,对很多东西都不理解,无从下手。我在网上找了找,说写存储过程都需要建包,应该怎么建呢,建完之后存储过程的语法结构又是怎么写呢?请大家多多指教,或者贴下一段代码供我参考!

------解决方法--------------------------------------------------------
可以不需要建包 下本PL/SQL程序设计看看吧

我们大部分程序是都不需要建包的 都用基本的PL/SQL

create or replace procedure p_test(i_1 varchar2,....参数列表) as
v_name varchar2(10);
v_id number(2);
begin
insert into test values(i_1,......);

end;
------解决方法--------------------------------------------------------
http://www.qqread.com/oracle/b412122105.html

------解决方法--------------------------------------------------------
create or replace procedure p_test(i_1 varchar2,....参数列表) as
l_col1 varchar2(10);
l_col2 number(2);
begin
select col1, col2 into l_col1, l_col2 from table_name where col3 = i_1 and ...;

end;

------解决方法--------------------------------------------------------
create or replace package TestPackage is
type mycursor is ref cursor; -- 定义游标变量
procedure p_test(i_1 varchar2,..., l_cursor out mycursor); -- 定义过程,用游标变量作为返回参数
end TestPackage;

create or replace procedure p_test(i_1 varchar2,..., l_cursor out mycursor) as
begin
open l_cursor for select * from table_name where col3 = i_1 and ...;
end;

大概的写法就是这样,但是现在我没有环境,没有办法测试是否正确
------解决方法--------------------------------------------------------
建议你看一本书《21天学会pl/sql编程》,这本书基本上可以满足你的要求
------解决方法--------------------------------------------------------
参考ORACLE帮助文档
------解决方法--------------------------------------------------------
也可以参考一下系统自带的过程,包体
------解决方法--------------------------------------------------------
fangbintao(fbi)介绍的书还是不错的,对于PL/SQL的入门比较的好

        

热点排行