【问题标题】:How do I know what my primary key should be and what is Indexing?我怎么知道我的主键应该是什么以及索引是什么?
【发布时间】:2018-02-20 17:32:58
【问题描述】:

所以我创建了一个包含 3 列的表:

Name (varchar(5))Date (date)text (varchar(150))

如果一年中有 365 天和 40 个名称,并且每个名称都与每一天相关联,那么主键是什么?会是文字吗?因为这对于名称和日期的每个组合来说都是唯一的?

另外,可索引列和不可索引列有什么区别?

【问题讨论】:

  • 这闻起来像功课,没有表现出真正的努力......
  • 主键将是您定义为主键的identity 列。然后,您可以根据您的业务规则定义唯一的键组合。哦,这就是我定义表格的方式。
  • 我听说过《为凡人设计数据库》这本书的好消息。

标签: sql sql-server indexing primary-key


【解决方案1】:

如果这些真的是您唯一的选择,那么text 将是主键。但是,通常您会使用自动生成的索引/标识(整数)列,该列将用作主键。如果“以上都不是”是一个选项,我不会选择以上任何一个。对于初学者来说,这可能是一个简化的问题,因此在这种情况下,文本可能是正确的答案,但将其用作主键确实不是一个好主意,因为我可以手动输入重复项。

可索引列和不可索引列的区别在于可索引列不允许重复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-06
    • 1970-01-01
    • 2020-02-23
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多