【问题标题】:sql server column has foreign key to itself, and it is also a primary key, how is this possiblesql server 列本身有外键,又是主键,怎么可能
【发布时间】:2013-12-06 03:31:10
【问题描述】:

我正在分析数据库表和设计,我注意到有一个表,其列 interviewID 是表的主键,也是外键,关系说它是自身的外键,这怎么可能。主键说每个值应该是唯一的而不是空值,但外键说它必须是现有值之一?设计有问题吗?或者这背后有什么逻辑?

【问题讨论】:

    标签: sql foreign-keys primary-key


    【解决方案1】:

    当您在 SQL Server Management Studio 中创建新的外键时,所有控件都设置为疯狂的默认值:表的第一列(通常是主键列)上的自引用外键。我想有人这样做了,然后点击保存。

    它没有任何目的。删除它。

    【讨论】:

    • 在决定删除之前查看实际架构不是明智的吗?自引用外键的一些基本用法见stackoverflow.com/questions/246477/…
    • @yonitdm 根据 OP 键引用同一个表的同一列。这永远没有意义,因为约束总是得到满足。它说T.ID 必须在T.ID 的集合中。那没用。
    • 你的意思是删除列上的外键约束
    猜你喜欢
    • 2010-10-19
    • 1970-01-01
    • 2011-03-11
    • 2016-10-19
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多