在触发器中传值,当我的触发器是用于delete或者insert是,如何把值穿进去,在insert中是inserted就可以,当时在delete和update就不行了,要如何传进去??求救。
create trigger update_sale on Sale for update  ----用户更改购买商品数量
as
declare @spbh varchar(10)
declare @xssl int
declare @xsjg int
declare @yxssl int
declare @xsbh varchar(10)
select @xsbh=xsbh from inserted
select @spbh=spbh from inserted
select @xssl=xssl from insertedcreate trigger delete_sale on Sale for delete    ----用户退货,不够买以入单的某件商品  (delete触发器)
as
declare @spbh varchar(10)
declare @xssl int
declare @xsjg int
declare @xsbh varchar(10)
select @xsbh=xsbh from inserted
select @spbh=spbh from inserteddelete from sale where xsbh='xs02'and spbh='sp04'(语句)
如何把xs02和sp04传到@xsbh和@spbh,望高手指教!!!

解决方案 »

  1.   

    delete语句触发delete触发器,
    在触发器里面可以使用个虚拟表deleted
    select * from deleted
      

  2.   


    create trigger delete_sale 
    on Sale 
    for delete ----用户退货,不够买以入单的某件商品 (delete触发器)
    as
    Begin
    declare @spbh varchar(10)
    declare @xssl int
    declare @xsjg int
    declare @xsbh varchar(10)
    /*
    ---------------------------------Delete 触发器没有 Inserted 信息
    select @xsbh=xsbh from inserted
    select @spbh=spbh from inserted
    */
    --楼主可以通过Deleted 表查看下
    --可以找到你要的信息
    select * from deleted
    --delete from sale where xsbh='xs02'and spbh='sp04'(语句)
    End