如果有个表A 有ID(主键),name
表B 有ID(主键) name AID
在程序里添加B 表内容时会选择A表数据,在“AID”里记录A表的“ID”值加入我要进行删除A表内容时,那么B表的“AID”与A表相同的数据就不存在了。
所以我想在进如B表管理页面的时候去查找“AID”在A表“ID”中不存在的行并且删除掉,这样的语句要怎么写呢。。先谢谢啦。。
表B 有ID(主键) name AID
在程序里添加B 表内容时会选择A表数据,在“AID”里记录A表的“ID”值加入我要进行删除A表内容时,那么B表的“AID”与A表相同的数据就不存在了。
所以我想在进如B表管理页面的时候去查找“AID”在A表“ID”中不存在的行并且删除掉,这样的语句要怎么写呢。。先谢谢啦。。
delete from B where not exists
(
select 1 from A where A.id=b.aid
)
当删除A表时,对应B表信息也会被删除
create trigger tr_deleteB
on table_A
for delete
as
Begin
--删除数据时,自动删除B表对应数据
delete from table_B where exists
(
select 1 from deleted where deleted.id=table_B.aid
)
End