之前,在项目的管理员后台删除会员信息的时候,要求与会员相关的所有表信息删除。这里的删除,指的都是逻辑删除,即将记录的状态置为删除状态,不是从数据库直接删除的物理删除。尽管最后项目经理要求不采用触发器的方案,采用在程序端置状态的方式来实现,还是来mark一下,就算是对Sql server触发器复习一下吧。

该触发器的代码如下所示:

   1: ---在membership会员信息表里面删除指定membershipid的企业会员时(实际上没有进行物理删除,只是将status置为-1)
   2: ---将与企业会员有关的信息表里面的相关信息进行逻辑删除,即status置为-1
'membership_update')
   4:     Drop  Trigger membership_update 
   5: Go
   6: create trigger membership_update
   7: on Membership
for update
as
  10: begin
int
  12: select @membershipid=Membershipid,@status=Status from inserted;
if @status=-1
  14:  begin
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
where membershipid=@membershipid;
  24:  end
  25: end

相关文章:

  • 2022-12-23
  • 2022-01-11
  • 2021-04-26
  • 2021-11-26
  • 2021-10-21
  • 2021-09-26
  • 2022-02-19
  • 2022-12-23
猜你喜欢
  • 2021-06-22
  • 2022-01-06
  • 2022-12-23
  • 2021-12-17
  • 2022-12-23
相关资源
相似解决方案