gpt4 book ai didi

SQL主键: integer vs varchar

转载 作者:行者123 更新时间:2023-12-03 06:20:47 26 4
gpt4 key购买 nike

与我合作的团队决定创建一个带有 varchar 主键的表。该表被该主键上的另一个表引用。

按照我在大学学到的知识,我习惯创建整数主键。我读到,使用整数主键可以提高性能。

问题是我不知道创建整数主键的任何其他原因。你有什么建议吗?

最佳答案

主键应该代表行的标识,并且不应随时间变化。

我假设 varchar 是某种自然键 - 例如实体的名称、电子邮件地址或序列号。如果您使用自然键,则有时可能需要更改该键,因为例如:

  • 输入的数据不正确,需要更正。
  • 用户更改了姓名或电子邮件地址。
  • 管理层突然决定必须将所有客户引用号更改为其他格式,其原因在您看来完全不合逻辑,但即使在您解释了更改会给您带来的问题后,他们仍然坚持进行更改。
  • 也许甚至一个国家或州也决定更改其名称的拼写 - 可能性很小,但并非不可能。

通过使用代理键,您可以避免因必须更改主键而导致的问题。

关于SQL主键: integer vs varchar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3162202/

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