我使用GUID作为我所有其他表的主键,但我有一个需要增加数字的要求.我尝试使用自动增量在表中创建一个字段,但MySql抱怨它需要是主键.
我的应用程序使用MySql 5,nhibernate作为ORM.
我想到的可能的解决方案是:
将主键更改为自动增量字段,但仍将Id作为GUID,以便我的应用程序的其余部分保持一致.
使用GUID和自动增量字段创建复合键.
我现在的想法是倾向于复合的关键想法.
编辑:行ID(主键)是当前的GUID.我想添加一个自动增量的INT字段,以便它是人类可读的.我只是不想放弃使用GUID作为主键的应用程序中的当前标准.
GUID值旨在在表甚至数据库中是唯一的,因此,使auto_increment列为主索引并为GUID创建UNIQUE索引
我会倾向于另一种方式.
为什么?因为创建一个复合键给下一个人的印象,可以在表中使用相同的GUID两次,但序列号不同.