pl/sql 存储过程实例

本文介绍了一个用于验证任务是否完成及是否存在异常的存储过程。该过程接受三个参数,并返回整型值以指示任务的状态。文章详细展示了如何通过SQL查询获取特定任务的状态,并通过异常处理确保过程的健壮性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

create or replace function IsDone(s_id in varchar2,s_TaskNum in varchar2,s_TaskType in integer)
  return integer is
  /*
功能描述:此存储过程用来验证任务是否完成,有无异常
传入参数3个,分别不同类型,返回值integer类型
返回值:0 正常、1 执行sql错误 、-1存储过程调用有误
  */
  //定义变量
  type   stringArr   is   varray(2)   of   varchar2(30); //定义一个定长的字符串数组数据类型  
  dflag          integer;//返回值
  iCount         integer;
  strs           stringArr;
  s_taskid       varchar2(20);
begin
  begin
  iCount := splitstr(s_TaskNum, '_', strs);//自定义函数,截取字符串
  s_taskid:=strs(1);
  
    select  flag
      into dflag
      from table_Task t
     where taskid = s_taskid
       and id=s_id
       and taskType = s_TaskType
       and rownum=1
     order by flag asc;
    exception
    when others then
      return 1;//执行sql语句异常
  end;
  return dflag;
EXCEPTION
  when others then
    return - 1;//调用存储过程失败
END IsDone;


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值