Какой тип данных первичного ключа лучше всего подходит для большого идентификатора? - PullRequest
0 голосов
/ 17 июня 2020

В MySQL мне нужно сохранить первичный ключ длиной 21 (google или facebook uid), который имеет гораздо больший размер, чем int (2147483647 как максимальное значение) и BIGINT (9223372036854775807 как максимальное значение),

Я также читал о varchar и понял, что это низкая производительность и проблемы с AUTO_INCREMENT.

Какой первичный ключ лучше всего для такого случая?

1 Ответ

1 голос
/ 17 июня 2020

Почему бы просто не использовать numeric(21, 0)? Кажется, это точно описывает то, что вы ищете.

Я бы не сказал, что «varchar имеет низкую производительность». Что более точно, так это то, что более короткие ключи лучше, а ключи фиксированной длины лучше. Следовательно, строки не являются оптимальными ключами для индексов. Тем не менее, они по-прежнему очень разумны, когда это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...