oracle存储过程rowcount用法,Oracle带输入、输出参数的存储过程回来受影响的行数SQL%ROWCOUNT...
当前位置:我的异常网» SQL » Oracle带输入、输出参数的存储过程回来受影响的行数
Oracle带输入、输出参数的存储过程回来受影响的行数SQL%ROWCOUNT
www.myexceptions.net 网友分享于:2014-05-15 浏览:4次
Oracle带输入、输出参数的存储过程返回受影响的行数SQL%ROWCOUNT
Oracle带输入、输出参数的存储过程返回受影响的行数SQL%ROWCOUNT
[sql]
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) * 24 * 60 * 60;
--返回受影响的行数:SQL%ROWCOUNT
P_ROWS := SQL%ROWCOUNT || '行被更新,耗时:' || TRUNC(V_SECOND, 2) || '秒';
DBMS_OUTPUT.PUT_LINE(P_ROWS);
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
P_IS_SUCCESS := FALSE;
END;
END LOOP;
END PROC_UPDATE_TEMP;
[sql]
--调用存储过程
DECLARE
-- Boolean parameters are translated from/to integers:
-- 0/1/null false/true/null
P_IS_SUCCESS BOOLEAN;
P_ROWS VARCHAR2(200);
BEGIN
-- Call the procedure
PKG_STL_UPDATE_BILL_DATA.PROC_STL_UPDATE_TRUNC(P_DAYS => 0,
P_ROWS => P_ROWS,
P_IS_SUCCESS => P_IS_SUCCESS);
-- Convert false/true/null to 0/1/null
--:P_IS_SUCCESS := SYS.DIUTIL.BOOL_TO_INT(P_IS_SUCCESS);
dbms_output.put_line(P_ROWS);
dbms_output.put_line(SYS.DIUTIL.BOOL_TO_INT(P_IS_SUCCESS));
END;
[sql]
--SQL%ROWCOUNT用法
BEGIN
UPDATE T_JOB T SET T.JOB_ID = NULL WHERE T.ID = '2013';
IF (SQL%ROWCOUNT != 1) THEN
RAISE_APPLICATION_ERROR(-20001, '没有成功修改到记录');
END IF;
END;
文章评论
oracle存储过程rowcount用法,Oracle带输入、输出参数的存储过程回来受影响的行数SQL%ROWCOUNT...相关推荐
- SQL存储过程返回受影响的行数
在很多时候,使用存储过程,不需要返回数据集, 但是经常想知道存储过程是否对数据库有影响: 这些,只需要将下列数据放在你需要统计的语句后面即可: select @@ROWCOUNT
- MySQL存储过程之查询受影响的行数与查询到的行数
FOUND_ROWS() : select 查询擦操作 ROW_COUNT() : update delete insert. 增删改操作
- oracle数据库查询过后显示所受影响的行数
本文是在查询过程中显示受影响的行数,就是一共查出来几条.适用于查询的表的数据相当大的情况,上万条. 在其他操作数据所返回的受影响行数,就是例如我修改一下,增加一下,删除一下.这些对数据进行操作的.想要 ...
- oracle接收输入参数,Oracle带输入输出参数存储过程(包括sql分页功能)
记录一下,免得以后忘记了又要到处去找. begin /*这里不能直接执行select语句但可以直接执行update.delete.insert语句*/ end里面不能接执行select语句,声明会话级 ...
- C#里调用带输出参数的存储过程
C#里调用带输出参数的存储过程 1using System; 2using System.Collections.Generic; 3using System.Linq; 4using Sys ...
- 在asp中怎么调用带输出参数的存储过程
这是我写的存储过程 CREATE proc hz @count2 bigint output, @minsl varchar, @maxsl varchar as create table #tmp( ...
- 带有输出参数的存储过程
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- ...
- oracle中执行某sql语句后,如一系列delete、update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难?
oracle中执行某sql语句后,如一系列delete.update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难? 使 ...
- mysql 存储过程(提供查询语句并返回查询执行影响的行数)
DELIMITER $$ DROP PROCEDURE IF EXISTS `p_get_select_row_number`$$ CREATEPROCEDURE `test_cases`.`p_ge ...
最新文章
- linux配置java环境变量 转过几个,这个最详细和靠谱
- 每日一皮:开会不关微信的尴尬(2)
- java开发五年多少钱,附超全教程文档
- MySQL入门,了解下、
- python读取中文-python读取中文txt文本
- 重庆计算机学校电话号码,重庆计算机学校
- Ubuntu 18.04 LTS环境下 MNN 的编译与使用
- 无类别地址CIDR概述
- u盘安装linux 提示no such device_IGH EtherCAT 开源主站安装及测试
- 程序员疯狂记事:如何利用众多技术栈构建一个 Web 应用程序?!
- docker的核心原理-cgroup
- 关于python的文章_关于python的一篇介绍文章
- EasyDarwin测试
- 亚马逊云计算机配置,亚马逊云教程6:创建、启动AMI,设置Cloud Watch
- matlab 蓝屏抠图,MATLAB抠图
- 游戏服务器背包设计与实现
- concat函数_《MySQL 入门教程》第15篇MySQL常用函数之字符函数
- 深度学习-感受野与有效感受野
- 计算机硬件技术基础——作业四(草稿)
- 11-git-查看提交历史
热门文章
- 如何减小电压跟随器输出电阻_如何看懂稳压电路,看完这篇文章你就知道了
- Sring5学习(尚硅谷)
- CRM中的俱乐部管理
- dorado autoform 添加autoformElement
- 在linux下面解压用的zxpf是什么意思,它跟zxvf有啥区别
- mysql整型无符号 大小_解决mysql无符号整型自减运算时溢出的问题
- netfilteriptables探讨(2)——netfilter原理与实现
- aviator 表达式对象跟JSON结合使用方法
- STM32蓝牙控制循迹避障小车源代码——5.最终程序
- 蓝桥杯国信长天单片机实战--数码管的动态显示