当前位置: 代码迷 >> Sql Server >> sql2000触发器解决方法
  详细解决方案

sql2000触发器解决方法

热度:7   发布时间:2016-04-27 13:37:56.0
sql2000触发器
T1

  Code state




T2
id code(外建,引用的是T1的code)  



要求 删除T2 中 code = 1 的记录 ,同时要更新 T1 中的state值!
 

------解决方案--------------------
SQL code
Create trigger tr_T2 on T2for updateasupdate t1set State=1from deleted d inner join t1 on d.Code=t1.Code
------解决方案--------------------
SQL code
create trigger my_trig on t1 for deleteasbegin  update t1 set state = ... from t1 , deleted d where t1.code = d.code end
------解决方案--------------------
create trigger my_trig on t1 for delete
as
begin
update t1 set state = ... from t1 , deleted d where t1.code = d.code 
end




------解决方案--------------------
探讨
如果state 为1 则 current 清空为0 否则 current 自增

max值是 当current重置为0时 则判断 current > max 为真则 max = current

count 则表示统计的是state = 1次数

------解决方案--------------------
SQL code
create trigger tri_T2_deletedfor deleteasbeginupdate T set state=需要更新的值from T1 t,Deleted d where t.code=d.codeend
  相关解决方案