【问题标题】:deleting rows having some dependencies?删除有一些依赖关系的行?
【发布时间】:2015-10-30 19:24:59
【问题描述】:

如何在postgresql中删除在另一个表中有依赖关系的行(列)??

假设一个表名是学生,另一个是事务 两个表都有patron_id列,因为我试图删除patron_id列的赞助表中的一行,但它显示在事务表中有依赖关系,所以它显示无法更新,

即使我试图再次删除事务中的该行,它再次显示在赞助人表中具有相同的依赖关系。

如果有依赖关系,请告诉我如何删除行?

【问题讨论】:

  • 来吧,它不是你在谷歌输入标题1分钟内找不到的任何东西
  • @mikus 在 google 中输入标题将我带到这里,找到您可爱的评论。还有 Daksh B,您提到的可能重复与 SQL Server 2008 相关,而不是 Postgres。

标签: postgresql delete-row


【解决方案1】:

Use ON DELETE CASCADE foreign key definitions.

或者,您可以删除依赖行之前的依赖行,例如

begin;

delete from transaction
using patron
where transaction.patron_id = patron.id
  and patron.id = 'the_patron_id_to_delete';

delete from patron
where patron.id = 'the_patron_id_to_delete';

commit;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多