--SQL Server 2000 有DML触发器(看SQL Server 帮助)
--在 SQL Server 2005中添加了一个新的触发器 DDL 触发器.DDL 触发器可以很好响应业务规则改变.数据库定义的更新.

解决方案 »

  1.   

    触发器有三种:插入,删除,更新,
    这代表三种触发的事件,他是针对行级的,当发生插入,删除,更新时,这是条件,
    然后就发生结果,结果,是由你自己写SQL代码控制的
      

  2.   

    IF EXISTS (SELECT name FROM sysobjects WHERE name = 'test' AND type = 'TR')
       DROP TRIGGER test
    GO
    CREATE TRIGGER test
    ON 更新数据库的表名
    FOR INSERT, UPDATE
    AS
    begin
     insert into 表名 select 字段名 from inserted
    end
    go
      

  3.   

    真是高手,,小弟再问一个触发器的问题,,就是我用这个触发器时:
    CREATE TRIGGER cfq ON [dbo].[cs] 
    FOR INSERT
    AS
      EXEC master..xp_sendmail 'MaryM',
          'New title, mention in the next report to distributors.'就提示以一信息:[Microsoft][ODBC SQL Server Driver][SQL Server]xp_sendmail:无默认邮件客户程序,或者当前邮件客户程序无法实现消息请求。请运行Microsoft Outlook并将其设为默认邮件客户程序.我已经把它设成默认邮件客户程序.还是出现这个问题::
    请问怎么解决???????
      

  4.   

    触发器其实可以看做是一种特别的存储过程,当你进行insert、update、delete操作时就会触发!
    insert触发器,首先会先把insert的数据写到inserted表里面,inserted表可以看做是一个内存中的临时表!
    delete触发器,首先把delete的数据写到deleted表中,同上!
    update触发器,update的操作就是先delete再insert,所以会把delete的数据写到deleted表,insert数据写到insert表