用触发器:
create trigger 触发器名 on 表A
for delete
as
delete a from 表B a where exists(select 1 from deleted where id = a.id)
create trigger 触发器名 on 表A
for delete
as
delete a from 表B a where exists(select 1 from deleted where id = a.id)
delete A where ID = '**'
delete B where ID = '**'
直接写的话效率高一点
这样设计不太对吧,很少有两个表直接用id来链接的,A.ID=B.AID这样比较好些
delete from a where id in(select a.id=b.id from a.a,b.b)问这位老大,后边括号里什么意思?
不过上面写delete from a where id in(select a.id=b.id from a.a,b.b)这条语句的的人方向性错误,楼主要求删除的是与A表关联的B表的字段.
create trigger tr_delete on 表A
for delete
as
delete b from 表B b
where exists(
select * from deleted where ID=b.ID)
GO--删除语句
delete a from 表A a
where exists(
select * from 表B where ID=a.ID)
delete a from 表A a '''''此处不解a 是表A中某记录字段还是代表一条记录
where exists(
select * from 表B where ID=a.ID)
as
delete b from 表B b where exists(select * from deleted where ID=b.ID)