Хранение специальных символов в базе данных
-
11-09-2019 - |
Вопрос
Может ли кто-нибудь предоставить некоторые рекомендации по хранению специальных символов, таких как товарный знак (tm или r) или авторские права (c)?Я сохраняю их в поле varchar вместе с другим текстом в SQL Server и показываю на веб-странице ASP.NET.Прямо сейчас мы сохраняем сам специальный символ и отображаем его.
Спасибо за любую помощь!
Решение
Просто используйте объекты HTML, такие как ™
и ©
если вы можете.
Нет необходимости переключаться на nvarchar, если у вас нет явного требования поддерживать Unicode.
Другие советы
Я храню их в поле varchar...
По крайней мере, есть одна проблема.Для текста, который может содержать «специальные» символы, вам нужно nvarchar
.
Что ж, с этими персонажами обычно вы будете отображать их как
©
Таким образом, вам не нужно делать ничего особенного в БД, но вы должны использовать поля с префиксом «N» для строк БД, NChar, NVarChar и т. д.
Это старый вопрос, но он заслуживает нового ответа:используйте UTF-8.Браузеры, базы данных и веб-серверы теперь поддерживают кодировку UTF-8, что означает, что вам не нужно кодировать специальные символы (за исключением описанных случаев). здесь, и то, только на выходе).
Есть несколько веских причин не кодировать данные в вашей базе данных в этот ответ.