create trigger tr_deletetest
  on temp_student1
  after delete
  as  
     delete from Temp_student2,deleted where Temp_student2.student_id=deleted.studentid

解决方案 »

  1.   


    create trigger tr_deletetest on temp_student1 
    after delete 
    as     
      delete from Temp_student2 a where a.student_id in(select student_id from deleted)
      

  2.   

    create   trigger   tr_deletetest 
    on   temp_student1 A
    for   delete 
    as     
    delete  Temp_student2 B where   B.student_id=(select A.student_id from delete)
      

  3.   

    delete后面的from是要删除其中的内容,因此他不能选中两个表来进行删除
      

  4.   

    你的delete语句用的不对 
    create   trigger   tr_deletetest 
        on   temp_student1 
        after   delete 
        as     
    delete t  ---这个地方你没有写要删除的表,我这里用的是别名
    from   Temp_student2 t inner join deleted d on t.student_id=d.studentid ---这个地方是两个表的连接
      

  5.   

    create   trigger   tr_deletetest
        on   temp_student1 
        after   delete 
        as     
    错误所在:          delete   from   Temp_student2,deleted   where   Temp_student2.student_id=deleted.studentid 可改为:
    DECLARE @SID VARCHAR(10)
    SELECT @SID=studentid FROM DELETED
    DELETE TEMP_STUDENT2 WHERE student_id=@SID
      

  6.   

    接分 你delete后面跟两张表 如果你是SQL程序 你删哪个表数据?