在 PostgreSQL 中,我有 2 个具有父/父关系的表。如果没有孩子的记录与之关联,我希望删除父亲记录(使用后触发器)
目前,我一直在做类似的事情
- 获取记录数(与当前孩子具有相同的父 id)
- 如果计数为 1,则删除当前子记录并删除它的父记录
- 如果计数大于 1,只需删除子记录(因为更多子记录取决于父记录)
我想知道我是否直接触发删除语句而不获取父记录的计数,例如
- 删除子记录
- 删除父记录(如果有依赖会抛出错误)
在这种情况下,如果任何孩子与父母相关联(通过外键),它将抛出错误并且不会被删除
第二种方法是否正确,要完成这项工作,是否在 PostgreSQL 中记录了此类错误(外键约束依赖项)