gpt4 book ai didi

sql - 如何创建此 SQL 约束

转载 作者:行者123 更新时间:2023-12-02 04:15:03 24 4
gpt4 key购买 nike

我所处的情况是我有一组现有的表,其中 Id 递增整数。我现在已经为每个表添加了一个 GUID 作为新的 PK。

我有一个主表

dbo.ParentTable(GUID - PK, ParentTableId INT, Name VARHCHAR) 

和一个子表
dbo.ChildTable(GUID - PK, ParentTableId INT, other fields.....) 

并希望基于 ParentTableId 在两者之间建立关系(主要是 LINQ to SQL from .Net 将建立关系)。
我意识到我无法在两者之间建立 FK 关系,因为他们现在有 PK 的 GUIDS。
我应该更新 Child 表中的 GUID 以便它们链接回其父表,还是可以仍然基于预先存在的 ParentId 列创建关系?

两者之间的关系是一对多(父对子),我使用的是 SQL Server 2008。

最佳答案

我想你可能错误地认为你只能创建一个 FOREIGN KEY引用 PRIMARY KEY .其实你可以创建一个FOREIGN KEY引用 UNIQUE约束例如

ALTER TABLE ParentTable ADD 
UNIQUE (ParentTableId);

ALTER TABLE ChildTable ADD
FOREIGN KEY (ParentTableId)
REFERENCES ParentTable (ParentTableId);

关于sql - 如何创建此 SQL 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3280245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com