如何在从父表中删除记录时使用Postgresql查询中的级联



如何在PostgreSQL中使用级联,同时从父表中删除在其他子表中引用的一条记录。目前它给出了语法错误。

ERROR:  syntax error at or near "cascade"
LINE 1: DELETE FROM fs_item where itemid = 700001803 cascade;

您必须以以下方式添加ON DELETE CASCADE约束:

ALTER TABLE table1 ADD CONSTRAINT "tbl1_tbl2_fkey" FOREIGN KEY(reference_key) REFERENCES table2 ON DELETE CASCADE;

然后,您可以简单地执行DELETE查询

 DELETE FROM fs_item where itemid = 700001803

delete语句没有CASCADE。您将外键设置为CASCADE删除,然后它会自动发生。

最新更新