Oracle中通过存储过程中返回数据集Oracle认证考试

文章作者 100test 发表时间 2010:01:17 22:34:15
来源 100Test.Com百考试题网


  一、使用存储过程返回数据集

  Oracle中存储过程返回数据集是通过ref cursor类型数据的参数返回的,而返回数据的参数应该是out或in out类型的。

  由于在定义存储过程时无法直接指定参数的数据类型为:ref cursor,而是首先通过以下方法将ref cursor进行了重定义:

  create or replace package FuxjPackage is

  type FuxjResultSet is ref cursor.

  --还可以定义其他内容

  end FuxjPackage.

  再定义存储过程:

  create or replace procedure UpdatefuxjExample (sDM in char,sMC in char, pRecCur in out FuxjPackage.FuxjResultSet)

  as

  begin

  0update fuxjExample set mc=sMC where dm=sDM.

  if SQL%ROWCOUNT=0 then

  rollback.

  open pRecCur for

  0select 0 res from dual.

  else

  commit.

  open pRecCur for

  0select 1 res from dual.

  end if.

  end.

  和

  create or replace procedure InsertfuxjExample (sDM in char,sMC in char, pRecCur in out FuxjPackage.FuxjResultSet)

  as

  begin

  insert into FuxjExample (dm,mc) values (sDM,sMC).

  commit.

  open pRecCur for

  0select * from FuxjExample.

  end.


相关文章


一个enqueue等待事件的分析Oracle认证考试
OracleRedo并行机制Oracle认证考试
适时增加Distinct提高查询效率Oracle认证考试
国产数据库能走多远?Oracle认证考试
Oracle中通过存储过程中返回数据集Oracle认证考试
Oracle数据库中时间处理Oracle认证考试
把Oracle表中的数据导出成Txt格式Oracle认证考试
数据库主要的系统表和数据字典视图Oracle认证考试
Fuzzingtool帮助OracleDBA删除SQL注入错误Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛