Столбцы Integer / Identity часто используются для первичных ключей в таблицах базы данных по ряду причин.Столбцы первичного ключа должны быть уникальными, не должны обновляться и действительно не иметь смысла.Это делает столбец идентификаторов довольно хорошим выбором, потому что сервер получит следующее значение за вас, они должны быть уникальными, а целые числа относительно малы и полезны (по сравнению с GUID).
Некоторые архитекторы баз данных поспорятчто другие типы данных должны использоваться для значений первичного ключа, а критерии «бессмысленный» и «не обновляемый» могут быть убедительно доказаны обеими сторонами.Несмотря на это, целочисленные поля / поля идентичности очень удобны, и многие разработчики баз данных считают, что они создают подходящие значения ключей для ссылочной целостности.
- Наилучшим выбором для первичного ключа являются целочисленные типы данных, поскольку целочисленные значения обрабатываются быстрее, чемсимвольные значения типа данных.Символьный тип данных (в качестве первичного ключа) необходимо преобразовать в эквивалентные значения ASCII перед обработкой.
- Выборка записи на основе первичного ключа будет быстрее в случае целых чисел в качестве первичных ключей, поскольку это будет означатьбольше записей индекса будет присутствовать на одной странице.Таким образом, общее время поиска уменьшается.Также соединения будут быстрее.Но это будет применимо, если ваш запрос использует поиск по кластерному индексу, а не сканирование, и если используется только одна таблица.В случае сканирования без дополнительного столбца будет означать больше строк на одной странице данных.
Надеюсь, это поможет вам!