nvarchar
магазины Unicode символов (которые поддерживают многие другие символы), varchar
нет. Поскольку 'Hej mit navn er Vaibhav'
не содержит символов Юникода, он работает отлично.
Так что я должен использовать varchar или nvarchar для хранения многоязычного текста.
Это зависит от вашей ситуации. nvarchar
занимает в два раза больше места, чем varchar
, поэтому, если у вас есть большая база данных, и вам не понадобится хранить дополнительные наборы символов, varchar
будет иметь смысл. Однако пространство не может быть проблемой для вас с меньшей базой данных, и вы можете предпочесть использовать дополнительное пространство для использования символов Unicode в будущем.
С конкретным вопросом про многоязычный текст, я бы сказал, что, скорее всего, вы столкнулись с персонажами, которых varchar
не может хранить.
'varchar' прекрасно до тех пор, пока вам не нужна поддержка юникода - для языков, таких как иврит, арабский, кириллица, китайский, японский, корейский и т.д. ** Имейте в виду: ** 'nvarchar' всегда использует 2 байта для каждого символа –