Я использую идентификаторы GUID в качестве основного ключа для всех моих других таблиц, но у меня есть требование, которое должно иметь возрастающее число. Я попытался создать поле в таблице с автоматическим приращением, но MySql пожаловался, что это должен быть первичный ключ.
Мое приложение использует MySql 5, nhibernate в качестве ORM.
Возможные решения, о которых я подумал:
измените первичный ключ на поле автоинкремента, но в качестве идентификатора GUID по-прежнему будет использоваться идентификатор, поэтому остальная часть моего приложения будет согласованной.
создайте составной ключ как с GUID, так и с полем автоинкремента.
Мои мысли в данный момент склоняются к идее составного ключа.
РЕДАКТИРОВАТЬ: идентификатор строки (первичный ключ) в настоящее время GUID. Я хотел бы добавить поле INT, которое автоматически увеличивается, чтобы его можно было читать. Я просто не хотел уходить от нынешнего стандарта в приложении, в котором GUID использовался в качестве первичных ключей.