如果你在Oracle存储过程的用法的实际运用中中,你对Oracle存储过程有不解之处时,你可以通过以下的文章对其的实际应用与功能有所了解,以下是文章的具体介绍,望你浏览完以下的内容会有所收获。
create table stuInfo
(
stuID int primary key,
stuName varchar2(20)
)
create or replace procedure proc1
is
begin
insert into stuInfo values(1,'liheng');
end;
create or replace procedure proc2
(
v_ID int,
v_Name varchar2
)
is
begin
insert into stuInfo values(v_ID,v_Name);
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
commit;记得要提交
end;
create or replace procedure proc3
(
v_ID int,
v_Name out varchar2
)
is
varName stuInfo.Stuname%type;
begin
select stuName into varName from stuInfo where stuID=v_ID;
v_Name:=varName;
end;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
在Oracle存储过程的用法中我们要返回全部记录
create or replace package PKG_STUINFO is
type stuInfoCursorType is ref cursor;
procedure getStuInfo (stuInfoCursor out stuInfoCursorType);
end;
create or replace package body PKG_STUINFO is
procedure getStuInfo (stuInfoCursor out stuInfoCursorType)
is
var_cursor stuInfoCursorType;
begin
open var_cursor for select * from stuInfo;
stuInfoCursor:=var_cursor;
end;
end;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
根据编号返回记录
create or replace package PKG_STUINFO is
type stuInfoCursorType is ref cursor;
procedure getStuInfo
(v_ID int,stuInfoCursor out stuInfoCursorType);
end;
create or replace package body PKG_STUINFO is
procedure getStuInfo
(v_ID int,stuInfoCursor out stuInfoCursorType)
is
var_cursor stuInfoCursorType;
begin
if v_ID=0 then
open var_cursor for select * from stuInfo;
else
open var_cursor for select * from stuInfo where stuID=v_ID;
end if;
stuInfoCursor:=var_cursor;
end;
end;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
根据姓名返回记录
create or replace package PKG_STUINFO is
type stuInfoCursorType is ref cursor;
procedure getStuInfo (v_Name varchar2,stuInfoCursor out stuInfoCursorType);
end;
create or replace package body PKG_STUINFO is
procedure getStuInfo (v_Name varchar2,stuInfoCursor out stuInfoCursorType)
is
var_cursor stuInfoCursorType;
begin
if v_Name =' ' then
open var_cursor for select * from stuInfo;
else
open var_cursor for select * from stuInfo where stuName like '%'||v_Name||'%';
end if;
stuInfoCursor:=var_cursor;
end;
end;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
上述的相关内容就是对Oracle存储过程的用法的描述,希望会给你带来一些帮助在此方面。
【编辑推荐】