Какой тип данных столбца SQL следует использовать для хранения адресов электронной почты?

Какой тип данных столбца SQL следует использовать для хранения адресов электронной почты? Я думаю, что varchar (256), вероятно, ответ. Есть ли причина, по которой это должно быть nvarchar (256)? Я пишу в базу данных SQL Azure.

Как я могу выполнить проверку адресов электронной почты на стороне клиента, чтобы узнать, ввел ли пользователь символ Юникода или нет?


person Mark13426    schedule 27.10.2012    source источник


Ответы (1)


Адреса электронной почты могут содержать символы, отличные от Unicode: Адреса электронной почты разрешено содержать символы, отличные от буквенно-цифровых?

Я бы в качестве лучшей практики создал столбец nvarchar для поддержки глобализации / локализации в будущем (потому что вы никогда не знаете). Дополнительное пространство, необходимое для nvarchar по сравнению с varchar, очень незначительно.

Поскольку захват каждого возможного символа для проверки электронной почты непрост, вы можете написать функцию регулярного выражения, чтобы проверить это, поскольку большинство языков высокого уровня совместимы с Unicode.

person Bart Czernicki    schedule 28.10.2012