数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

oracle存储过程的用法


发布日期:2021年08月24日
 
oracle存储过程的用法

create table stuInfo

(

stuID int primary key

stuName varchar()

)

create or replace procedure proc

is

begin

insert into stuInfo values(liheng);

end;

create or replace procedure proc

(

v_ID int

v_Name varchar

)

is

begin

insert into stuInfo values(v_IDv_Name);

commit;记得要提交

end;

create or replace procedure proc

(

v_ID int

v_Name out varchar

)

is

varName stuInfoStuname%type;

begin

select stuName into varName from stuInfo where stuID=v_ID;

v_Name:=varName;

end;

=====================返回全部记录=======================================

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;

=====================根据编号返回记录==============================

create or replace package PKG_STUINFO is

type stuInfoCursorType is ref cursor;

procedure getStuInfo (v_ID intstuInfoCursor out stuInfoCursorType);

end;

create or replace package body PKG_STUINFO is

procedure getStuInfo (v_ID intstuInfoCursor out stuInfoCursorType)

is

var_cursor stuInfoCursorType;

begin

if v_ID= 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;

=========================根据姓名返回记录===========================

create or replace package PKG_STUINFO is

type stuInfoCursorType is ref cursor;

procedure getStuInfo (v_Name varcharstuInfoCursor out stuInfoCursorType);

end;

create or replace package body PKG_STUINFO is

procedure getStuInfo (v_Name varcharstuInfoCursor 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;

上一篇:新手上路:Oracle分析函数学习笔记一

下一篇:oracle认证辅导:oracle优化和管理sql1