Oracle带输入、输出参数的存储过程 返回受影响的行数 SQL%ROWCOUNT

本文详细介绍了如何在Oracle数据库中创建一个带有输入和输出参数的存储过程,并使用SQL%ROWCOUNT获取受影响的行数。通过示例代码,展示了存储过程的编写和调用方法,帮助理解在实际操作中如何有效利用这些功能。
摘要由CSDN通过智能技术生成
CREATE OR REPLACE PROCEDURE PROC_UPDATE_TEMP(P_DAYS       IN NUMBER, --执行天数
                                             P_ROWS       OUT VARCHAR2, --返回受影响的行数
                                             P_IS_SUCCESS OUT BOOLEAN) --返回成功与否
 AS
  V_NOW        DATE := TRUNC(SYSDATE);
  V_BEGIN_DATE DATE;
  V_SECOND     NUMBER;
  I            INT := 0;

BEGIN

  /*  WHILE I < P_DAYS LOOP
    UPDATE T_TEMP
       SET TEMP_STATUS = '01', TEMP_FLAG = '0'
     WHERE CREATE_TIME >= V_NOW - I
       AND CREATE_TIME < V_NOW + 1 - I;
    COMMIT;
    I = I + 1;
  END LOOP;*/

  FOR I IN 0 .. P_DAYS LOOP
    BEGIN
      V_BEGIN_DATE := SYSDATE;
      UPDATE T_TEMP
         SET TEMP_STATUS = '01', TEMP_FLAG = '0'
       WHERE CREATE_TIME >= V_NOW - I
         AND CREATE_TIME < V_NOW + 1 - I;
      P_IS_SUCCESS := TRUE;
      V_SECOND     := (SYSDATE - V_BEGIN_DATE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值