我在尝试删除表中的特定记录时遇到以下消息错误(DataIntegrityViolationException):

Cannot delete or update a parent row: a foreign key constraint fails (company.table_parent, CONSTRAINT table_parent_ibfk_1 FOREIGN KEY (id_son) REFERENCES layout (id))

我已经知道原因了:我正在尝试删除一条记录,但是,该记录正在其他表中使用。

我想知道是否存在一个包含表和事务尝试中涉及的列的属性,以便我可以正确地处理异常而无需检查错误消息的内容。

最佳答案

我不知道此调用是否包含在外部包装的事务中。如我所见,您可以:

(A)进行呼叫并解析错误消息。您将知道违规表/违规行为。

(B)在更新/删除调用之前,查询FK表中是否存在父级或子级怀疑是否存在后续违规的列。

观察B的另一种方法是,您可能正在针对父表执行此操作,而子表却在咆哮着说您将要孤立我

09-25 20:56