我有一个主表和一个详细信息表。 删除级联时不指定。
我希望在单个查询中删除子记录和主记录。
假设我想使用单个查询删除EmpID = 20的EmployeeDetails和Employee记录。
有可能吗?
请帮忙。
答案 0 :(得分:3)
除非您已启用cascade delete
或PK表上有trigger
将删除该关系的FK表行,否则无法在单个查询中执行此操作
答案 1 :(得分:2)
SQL中没有允许您从单个命令中的两个表中删除的构造。您可以在单个“批处理”或事务中执行此操作(这将是更好的选择)。
答案 2 :(得分:1)
您可以在子表上添加触发器以删除任何其他子项,然后删除父项。这不是“技术上”单个语句,但您的应用程序只需要发出一个DELETE就可以完成。