繁体   English   中英

SQL'加入'2个主键到1

[英]SQL 'join' 2 primary keys to 1

我有2张桌子:

PrimKey
001
002

和:

ID | ForeignKey
a  | 001
b  | 002
c  | 002

我想删除,比方说,行002和'绑定'所有002外键到001,所以它看起来像:

PrimKey
001

和:

ID | ForeignKey
a  | 001
b  | 001
c  | 001

FK约束不允许我做UPDATE + DELETE。 任何提示在哪里挖?

你必须从另一个方向去做。 更改第二个表中的行以指向第一个表中的不同PK; 那么当没有对row002的引用时,你可以删除它。

您也可以尝试begin transactionupdatedeletecommit

如果您无法控制数据库架构,则必须按照Jeremy的指示手动删除。

如果确实有控件,则可以在表之间添加外键关系,并在关系详细信息中添加“级联删除”约束。 您可以通过使用外键转到表的表设计并右键单击以选择“关系”来完成此操作。 然后选择“添加”并转到定义表和列的部分。 单击带有三个点的按钮,您将能够选择关系的父表,然后您可以选择用于创建关系的列。 最后,在关系屏幕中,您可以找到插入/更新规范部分,以指示删除时的“级联”。 (对此也有一个alter table语句,但有时候使用GUI会更快。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM