SQL Server Trigger学习

http://baike.baidu.com/view/1189954.htm

1. if update是用来判断update要更新的是不是某个字段,如果是某个字段,则执行if后边的语句块。因为update操作是针对某个或某些字段的,所以可以用if update()来分别判断。
2. deleted 和 inserted 是逻辑(概念)表。这些表在结构上类似于定义触发器的表(也就是在其中尝试用户操作的表);这些表用于保存用户操作可能更改的行的旧值或新值。 

资料:  http://msdn.microsoft.com/en-us/library/aa258254%28v=sql.80%29.aspx

My Sample Trigger:

ALTER TRIGGER [dbo].[Rex_Trigger]

   ON  [dbo].[Table_1_Rex]
   For UPDATE
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    DECLARE @id_val int, @name_val nvarchar(10)
      SELECT TOP 1 @id_val = id,  @name_val = name FROM INSERTED
       
      INSERT INTO Table_1_Rex_A (id, name, age, trx_id)
       SELECT D.id, D.name, D.age, @id_val
       FROM DELETED D WHERE D.id <> @id_val
    -- Insert statements for trigger here

END


你可能感兴趣的:(sql,server,table,insert)