gpt4 book ai didi

mysql - 我可以使用 VARCHAR 作为主键吗?

转载 作者:IT老高 更新时间:2023-10-28 12:57:18 30 4
gpt4 key购买 nike

我有一个用于存储优惠券/折扣的表,我想使用 coupon_code 列作为主键,它是一个 VARCHAR

我的理由是,每张优惠券都有一个唯一的代码,我将运行的唯一命令是 SELECT ... FROM ... WHERE coupon_code='..'

我不会进行任何连接或索引,而且我认为此表中的条目不会超过几百个。

在我看来这没问题,但我不知道是否有什么我错过/没有考虑的。

最佳答案

当然可以,因为您的 RDBMS 会让您这样做。但是,您是否应该这样做的问题的答案是不同的:在大多数情况下,应该选择在您的数据库系统之外有意义的值成为主键。

如果您知道该值在您正在建模的系统中是唯一的,则可以为您的表添加唯一索引或唯一约束。但是,您的主键通常应该是一些“无意义”的值,例如自动递增的数字或 GUID。

这样做的理由很简单:数据输入错误和对看似不可更改的事物的不频繁更改确实会发生。它们变得更难修复用作主键的值。

关于mysql - 我可以使用 VARCHAR 作为主键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19299874/

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