0

これらのテーブルtbl_Userstbl_prepaid、および がありtbl_Expireます。

tbl_Prepaidからカード番号を削除し、入力直後にtbl_Prepaid挿入するトリガーを使用しています。tbl_Expire

今、私は同じトリガーに移動userIDしたいと考えています。tbl_Userstbl_Expire

どうすればそれができますか?

これが私がこれまでに持っているものです:

alter TRIGGER trgAfterUpdate ON [dbo].[tbl_Prepaid] 
FOR UPDATE
AS
    declare @id_ppaid int;
    declare @serial nvarchar(100);
    declare @balance nvarchar(100);
    declare @price int;



    select @id_ppaid=i.id from inserted i;  
    select @serial=i.serial from inserted i;    
    select @balance=i.balance from inserted i;  
    select @price=i.price from inserted i;


    if update(used)

    insert into tbl_Expire(id_Pripaid,serial,balance,price) 
    values(@id_ppaid,@serial,@balance,@price);


     delete from tbl_Prepaid where id=@id_ppaid;

    PRINT 'After updates trigger fired.'
GO  
4

1 に答える 1

0

必要なテーブルから変数の userid の値をフェッチし、insert ステートメントに変数 (@userid) を追加するだけです。

Declare @userid int
Select @userid=userid from tablename
insert into tbl_Expire(id_Pripaid,serial,balance,price,userid) 
values(@id_ppaid,@serial,@balance,@price,@userid);
于 2013-08-23T13:29:09.693 に答える