PB+MS SQL+触发器关闭返回值

PB+MS SQL+触发器必须注意:

若触发器存在两笔以上的返回值,比如两条update 语句,被误判为数据有改变,存盘不成功。

提示:

Row changed between retrieve and update.

No changes made to database.

 

 所以MS SQL 触发器必须统一处理为:

         触发器开始加:

if@@ROWCOUNT=0 Return --提高效能

setnocount on --不返回统计笔数,可减少网络频繁响应,提高效性能;避免误判为数据有改变(sybase不存在此类问题)

结束加:

setnocount off

例如:

drop trigger delete_rolemenu
go
Create trigger delete_rolemenu On BS_Menu for Delete
          As
          begin
          if @@ROWCOUNT=0 Return --提高效能
          set nocount on
            Delete FROM BS_RoleMenu Where menu_id in (select menu_id from deleted)
          set nocount off
          end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值