【发布时间】:2019-03-16 01:53:14
【问题描述】:
我无法回答以下问题...
通过示例说明一个场景,其中属性在不同的行中具有唯一值,但它实际上不能用作数据库关系/表中的主键。
【问题讨论】:
-
如果唯一的列是 1000 个字符长,那么将其用作主键可能是不明智的,因为 1000 个字符的外键充其量是笨拙的。
-
请阅读How to Ask,点击谷歌搜索'stackexchange homework'和投票箭头鼠标悬停文本。展示您的能力以及您的研究的相关摘要。
-
@JonathanLeffler 这就是索引的用途。
-
什么是“价值”? (它是否包括 NULL?)“不同行中的唯一值”是什么意思? (SQL 意义上的 2 个 NULL 都是唯一的,或者数学意义上的 NULL=NULL?)“PK”是什么意思? (关系区分CK还是SQL区分UNIQUE NOT NULL?)“实际上”是什么意思? (“在 SQL DBMS 中”?)这是什么上下文? (教科书名称、版本和部分会有所帮助。)(如果您不知道单词的含义,那么您在使用它们时就不会提出问题。)如果这是上下文的一部分,最好用 SQL 标记它,但是即使“值”是否包含 NULL 也必须明确说明。
标签: sql database-design primary-key unique-key