У меня есть огромная таблица, содержащая миллионы записей, предполагая, что мой естественный ключ слишком велик и может измениться в будущем, я хочу добавить суррогатный первичный ключ и использовать этот суррогат в качестве внешнего ключа в разных таблицах.что выбрать для первичного ключа в таблице?
- Должен ли я оставить свой естественный ключ также в качестве первичного ключа? или это должно быть точно так же, как любая другая колонка?
большинства доступа к этой таблице поиска по естественному ключу
- для выполнения времени, если естественный ключ быть удален или определен в качестве альтернативного ключа?
- Я не хочу иметь 2 идентичных натуральных ключа, как это следует применять, используя естественный ключ как первичный ключ?
- Что это значит, если я использую натуральный ключ в качестве первичного ключа, а также добавляю еще один суррогатный ключ и определяю его также как первичный ключ? Я попытался найти примеры, которые действительно могли бы найти хороший, ссылки и примеры действительно помогут.
«Предполагая, что мой естественный ключ слишком велик» - возможно, ваши предположения неверны, поэтому, пожалуйста, дайте более подробную информацию. «может измениться в будущем» - стабильность - это свойство хорошего ключа; неизменность является идеальным, но не обязательным условием. Но ** может измениться? [YAGNI] (http://en.wikipedia.org/wiki/You_ain't_gonna_need_it). – onedaywhen