T-SQL соответствует специальным символам.Пре должно соответствовать Пре
-
16-09-2019 - |
Вопрос
У меня есть список названий компаний, и пользователь должен ввести название своей компании, чтобы войти в систему.Допустим, у нас есть компания "Pré ABC", теперь я хочу, чтобы пользователь мог вводить "Pre" или "Pré".
Сначала я подумал, что это встроенная функциональность оператора LIKE, но, к сожалению, это не так.Есть какие-нибудь мысли?
Решение
Это имеет отношение к сортировке.Каждая база данных имеет свои собственные параметры сортировки (и любой столбец также может переопределять эти параметры сортировки).В вашем случае вы ищете параметры сортировки, которые не зависят от акцента и регистра.Попробуйте настроить базу данных так, чтобы "SQL_Latin1_General_CP1_CI_AI
".Это расшифровывается как "кодовая страница 1, без учета регистра и ударения", что должно заставить ваши запросы работать по желанию.
Другие советы
SELECT 1
WHERE N'Pré ABC' COLLATE LATIN1_GENERAL_CI_AI LIKE N'%Pre%'