今天我们讨论了以下问题:
巴西有 27 个州,每个州都有自己的缩写(就像美国一样)。所以我们有RJ
里约热内卢、SP
圣保罗、MG
米纳斯吉拉斯州等等。
我们的一个程序员的建议,我们应该使用这些缩写(RJ
,SP
,MG
等)PK
上States
表中,我们正在计划添加到一个新的项目。
推断我们数据库的使用,我反驳了他的论点,说如果我们-有一天-将我们的服务扩展到其他国家,我们会遇到重复缩写的问题,例如:在美国SC
,南卡罗来纳州和巴西都有我们已经到SC
了圣卡塔琳娜州;对于MT
,PA
和也会发生同样的情况MA
。基于这一点,我们同意应该有一ID
列 as PK IDENTITY
。
现在,假设我们不将我们的服务扩展到其他国家并且只停留在巴西,我开始考虑使用 VARCHAR(2) 列作为 PK 的想法。在这种情况下,这听起来并不完全是个坏主意。是吗?为什么?在哪些情况下可以应用?是否应该考虑记忆以便从一种选择到另一种?