`

sql 中 sql%rowcount 判断执行SQL受影响的行数

SQL 
阅读更多
sql  中 sql%rowcount 判断执行SQL受影响的行数

例子:
update work_order
       set order_state = '1'
     where line_id = p_line_id
       and order_state = '0'
       and order_type = 'DPY'
       and ORDER_PRIORITY = (select min(ORDER_PRIORITY)
                               from work_order
                              where order_state = '0'
                                and order_type = 'DPY'
                                and LINE_ID = p_line_id
                                and order_priority > 0
                              group by LINE_ID)
        and exists
               (select 1
                        from product_level pl
                       where pl.pid = pid
                         and pl.child_pid =
                             (select (select pid
                                        from product_maintain pm
                                       where pm.product_number =
                                             rw.material_number
                                         and pm.rstate = rw.material_rstate)
                                from routing_wip rw
                               where rw.sn = p_sn))
        and rownum <= 1;

   if  sql%rowcount > 1 then      //代表上面update语句影响的行数

   raise_application_error (-20015,
                           'Work order with same priority in the waiting queue ! ');


   end if ;
分享到:
评论

相关推荐

    JAVA 与 Sql学习笔记

    4.用%BULK_ROWCOUNT 属性计算FORALL迭代影响行数 ,用%BULK_ROWCOUNT 属性计算FORALL迭代影响行数 5.用BULK COLLECT子句取回查询结果至集合中 6.用LIMIT 子句限制批取出操作行 7.用RETURNING INTO子句取回DML结果至...

    SQL21日自学通

    计算所有的表中的行数354 为多个用户赋予系统权限359 将你的表的权限赋予其它的用户361 在载入数据时解除对数的约束363 一次创建多个同义字364 为你的表创建视图368 在一个计划中清除其所有的表的内容369 使用SQL 来...

    SQL语句生成及分析器(中文绿色)

    Limit(MySQL),Set RowCount(Sybase)) 3.1.3 字段表达式或者计算字段 3.2 选择表 (From) 3.3 条件筛选 (Where) 3.4 分组 (Group By) 3.5 组内条件 (Having) 3.6 排序 (Order By) 3.7 数据表的内连接、...

    SQL Server中统计每个表行数的快速方法

    如果需要统计数据库每个表各自的行数(DBA可能有这种需求),用count()函数就必须为每个表生成一个动态SQL语句并执行,才能得到结果。以前在互联网上看到有一种很好的解决方法,忘记出处了,写下来分享一下。 该方法...

    SQL语句集锦.rar

    工作中常用的SQL + 超复杂SQL 交叉连接查询corss.txt 公交线路问题.txt 。。。。 充储过程--sql0.sql 分割字符串.txt 分布式查询.txt 分组排列进行更新.txt 别名.txt 动态SQL语句.txt 动态语句.txt 区分大小写.txt ...

    PL/SQL 基础.doc

    3) 里层执行块对外层执行块变量的修改会影响外层块变量的值 (在此里层,对其他里层则不影响,想要不影响此里层的话可以使用标号标注外层); ---- 第四章 PL/SQL控制语句 ---- 1. 条件语句 IF boolean_expression1...

    SQL中SET和SELECT赋值的区别

    最近的项目写的SQL比较多,经常会用到对变量赋值,而我... 说到这个,SQL内置的变量:@@ERROR 和 @@ROWCOUNT必须要在一句SQL语句中捕获。如果用set分两句来获取它们,将获取不完整,这时就应该用select来获取值。 */

    SQL ASP.NET高性能分页

    SQLServer中有一个Set Rowcount的的设置,它的意思是使命令的处理在响应指定的行数之后停止处理命令,利用这个特点,我们可以借用它来在一个千万行级数据表中实现高性能分页查询。先来说说实现方式: 1、我们来假定...

    PHP PDOStatement::rowCount讲解

    PDOStatement::rowCount()返回上一个由对应的 PDOStatement 对象执行DELETE、 INSERT、或 UPDATE 语句受影响的行数。 如果上一条由相关 PDOStatement 执行的 SQL 语句是一条 SELECT 语句,有些数据可能返回由此语句...

    SQL.Server.2008编程入门经典(第3版).part2.rar

    《SQL Server 2008编程入门经典(第3版)》由浅入深逐步介绍了SQL Server数据库的高级主题,重点讨论了SQL Server 2008的特殊功能以及与其他编程环境的不同之处。作者Robert Vieria是Microsoft SQL,Server方面的权威...

    sql中循环处理当前行数据和上一行数据相加减

    以下事例,使用游标循环表#temptable中数据,然后让当前行和上一行中的argument1 相加 存放到当前行的 argument2 中,比较简单。 --drop table #temptable create table #temptable ( argument1 int, argument2 ...

    SQL Server 2008编程入门经典(第3版)

    第1章 RDBMS基础:SQLServer数据库的构成 1.1 数据库对象概述 1.1.1 数据库对象 1.1.2 事务日志 1.1.3 最基本的数据库对象:表 1.1.4 文件组 1.1.5 数据库关系图 1.1.6 视图 1.1.7 存储过程 1.1.8 用户自定义函数 ...

    SQL.Server.2008编程入门经典(第3版).part1.rar

    《SQL Server 2008编程入门经典(第3版)》由浅入深逐步介绍了SQL Server数据库的高级主题,重点讨论了SQL Server 2008的特殊功能以及与其他编程环境的不同之处。作者Robert Vieria是Microsoft SQL,Server方面的权威...

    SQL实际应用面试题

    一些简单的SQL面试题,仅供大家参考 管理结果集的分页 问:我怎样才能使用SQL Server对结果集的分页进行管理? 答:您经常需要使用一次一页的形式来显示一个结果集,并保证用户可以轻松查看各个结果集页面,特别是...

    sql总结.doc

    执行结果:SQL%ROWCOUNT = 1 (显式游标基本) DECLARE CURSOR mycur IS SELECT * FROM dept; deptinfo dept%ROWTYPE; BEGIN IF mycur%ISOPEN THEN NULL; ELSE OPEN mycur; END IF; LOOP FETCH mycur INTO deptinfo...

    浅谈PDO的rowCount函数

    PDO有一个函数PDOStatement::rowCount返回上一个SQL语句影响的行数。 rowCount函数对于DELETE, INSERT, 或者UPDATE语句的结果是正确的,但对于select语句则与数据库的实现相关。有些数据库在执行select语句时会将结果...

    sql语句生成与分析器.rar

    大型数据库Oracle(包括Oracle Lite),Sybase(包括SQL AnyWhere),DB2,MS_SQL 中型数据库MS_Access,MySQL 桌面型数据库Paradox,DBF系列数据库,MS_Execl,Text 其他支持SQL 92标准的数据库 2、数据库的连接...

    Sql Server 存储过程调用存储过程接收输出参数返回值

    创建存储过程: ALTER PROCEDURE [dbo].[GetCustomers] (@rowcount INT OUTPUT) AS SELECT [CustomerID] ,[CompanyName] ,[ContactName] ,[ContactTitle] ,[Address] ...SET @rowcount=@@rowcount

    SQLServer 2008中SQL增强之二 Top新用途

    见//www.jb51.net/article/27089.htm此时可以使用Set RowCount,但是在SQL Server 2005/2008中,TOP通常执行得更快,所以应该用TOP关键字来取代Set RowCount。 代码如下: /***************创建测试表****************...

    详解Oracle隐式游标和显式游标

    -- sql%rowcount:影响记录条数 sql%found:是否有满足条件的记录 set serveroutput on; declare v_ename a_emp.ename%type; begin select ename into v_ename from a_emp where empno=7788; if sql%found then ...

Global site tag (gtag.js) - Google Analytics