create trigger 触发器名 on 学生表
for insert
as
   if exists(select 1 from inserted where 班级名 not in (select 班级名 from 班级表))
   rollback

解决方案 »

  1.   

    CREATE TRIGER [T1] ON 学生表
    FOR INSERT 
    AS
    if not exists(select 1 from 班级表 where where 班级名 in (select 班级名 from inserted))
       rollback tran
      

  2.   

    create trigger 触发器名 on 学生表
    INSTEAD OF  insert
    as
       if not exists(select 1 from inserted where 班级名 not in (select 班级名 from 班级表))
       插入记录
      

  3.   

    create trigger 触发器名 on 学生表
    for insert
    as
       if exists(select 1 from inserted where 班级名 not in (select 班级名 from 班级表))
       rollback我也记得好象回答过的
      

  4.   

    CREATE TRIGGER [T1] ON 学生表
    for insert 
    as
    if exists(select 1 from inserted where 班级名 not in(select 班级名 from 班级表))
    rollback tran
    go
      

  5.   

    --或(这个效率高一点):
    CREATE TRIGGER [T1] ON 学生表
    for insert 
    as
    if exists(select 1 from inserted a left join 班级表 b on a.班级名=b.班级名 where b.班级名 is null)
    rollback tran
    go