我有4个表格假设:t1.id
为PK
而t2.id
,t3.id
,t4.id
为FK
,现在,
如何删除所有表中的特定行(id
)?
当然,我搜索过但我找不到答案而感到困惑!!!
请帮帮我。
答案 0 :(得分:1)
您可以将t2,t3和t4上的异物更改为CASCADE DELETE.
因此,当在t1中删除一行时,它会自动从t2,t3和t4中删除子行
有时,您不能或不想要级联,因此您需要手动执行此操作,例如on cascade delete on a table with two FK to the same table
答案 1 :(得分:0)
delete from t2 where t2.Id = <id>
delete from t3 where t3.Id = <id>
delete from t4 where t4.Id = <id>
delete from t1 where t1.Id = <id>
不确定我是否误解了你的问题。但是从表中删除特定行只需要该行的id。此外,从父子关系模式中删除条目时,必须确保仅在删除所有子条目后才删除父表中的条目。