Проблема использования VARCHAR для любого КЛЮЧА заключается в том, что они могут содержать БЕЛЫЙ ПРОБЕЛ. Пробел состоит из ЛЮБОГО не читаемого на экране символа, такого как табуляция пробелов, возврат каретки и т. Д. Использование VARCHAR в качестве ключа может усложнить вам жизнь, когда вы начнете искать, почему таблицы не возвращают записи с дополнительными пробелами в конце их ключей.
Конечно, вы МОЖЕТЕ использовать VARCHAR, но вы должны быть очень осторожны с входом и выходом. Они также занимают больше места и, вероятно, работают медленнее при выполнении запросов.
Целочисленные типы имеют небольшой список из 10 допустимых символов, 0,1,2,3,4,5,6,7,8,9 . Это гораздо лучшее решение для использования в качестве ключей.
Вы всегда можете использовать целочисленный ключ и использовать VARCHAR в качестве УНИКАЛЬНОГО значения, если хотите использовать преимущества более быстрого поиска.