不能将   AFTER   触发器与视图相关联,只有   INSTEAD   OF   触发器可以与之相关联。

解决方案 »

  1.   

    直接定义到视图上么?
    用instead of
    create trigger opt_se_log
    on se_log
    ...
    ...
    不太明白了,做不成功。
      

  2.   

    比如
    CREATE TRIGGER trigger_name 
    ON view_name 
    INSTEAD OF  UPDATE
            AS 
    IF UPDATE ( column_name )
            sql_statement 
      

  3.   


    create trigger opt_se_log
    on se_log
    instead of delete
    as
    begin
      delete from sc where sno=(select sno from deleted) and cno=(select cno from deleted)
    end 这个对于删除的触发成功了。不过在做插入的时候遇到了点儿小问题create trigger opt_se_log
    on se_log
    instead of insert
    as
    begin
      insert into sc values('select sno from inserted','select cno from inserted','select grade from inserted')
    end在执行insert into se_log values('95001','李勇','1','数学','95')的时候 
    提示: 
    服务器: 消息 245,级别 16,状态 1,过程 opt_se_log,行 6 
    将 varchar 值 'select grade from inserted' 转换为数据类型为 int 的列时发生语法错误。 
    然后我将'select grade from inserted'改为了convert(int,'select grade from inserted')还是不行 再有一个问题,如果insert触发成功之后如何将insert和delete触发合并呢? 
    麻烦了