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 ;
评论
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

心似海
搜索本博客
博客分类
最近加入圈子
存档
最新评论