gpt4 book ai didi

mysql - 关于在 MYSQL 中使用自动增量字段作为唯一标识符的问题

转载 作者:行者123 更新时间:2023-11-29 13:27:17 26 4
gpt4 key购买 nike

我目前在我的表中使用通过 PHP 随机生成的 varchar 字符串作为唯一标识符,但在对该站点进行研究后,似乎最好使用自动增量主键字段作为唯一标识符,因为较小的整数速度差异加上我不必担心生成随机字符串。

然而,我的 friend 警告说不要这样做,因为如果索引丢失或增量数因任何原因重置,则增量数可能会更改为 0。另外,如果创建数据库的副本,例如。测试时使用COPY SELECT,未创建索引,自增丢失。

这些担忧是否有效?我应该做出改变吗? :)

编辑1

我会使用自动增量字段作为主键,并将其用作其他表中的外键,所以我担心的是,如果由于任何原因主表中的自动增量主键发生变化,那么其他表中的外键也会发生变化将会失效

最佳答案

只需进行更改即可。

  • auto_increment 必须是主键。这意味着不允许重复值。通常,您应该使用int unsigned not null auto_increment 主键进行定义。不需要负数。
  • 这是一个透明的标识符,因此不应在任何地方引用其实际值。引用实际值进行维护可能很方便,但如果将数据复制到新数据库,则不应担心值会发生变化。您可以在该列中INSERT一个值到您想要的任何值,只要它尚不存在即可。

关于mysql - 关于在 MYSQL 中使用自动增量字段作为唯一标识符的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19956053/

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