Существуют соображения производительности , связанные с размером столбца объединения. Целое число имеет ширину 4 байта - поэтому любое значение символа, превышающее 4 байта, требует большего дискового ввода-вывода, места в кэше и т. Д. Очевидно, что char (5) не сильно повлияет, но char (4000) будет чрезвычайно расточительным , Удвойте размеры символов, если вы используете типы Unicode.
Обычно этот вопрос возникает в контексте естественных против суррогатных ключей. В этом аргументе размер типа данных не является единственным фактором - так как вы часто можете избежать объединения с натуральным (char) ключом.
Конечно, ни один из них не может быть узким местом в вашем приложении - поэтому проектируйте безнаказанно (по крайней мере, в этой области).