Если вы хотите передать строку поиска в cyrillic
, но без использования Unicode
, вам следует запустить запрос в контексте «кириллической базы данных», т. Е. Если ваша БД (я называю ее LatinDB
) имеет Latin1_General_CI_AS
параметры сортировки: вы должны создать другую базу данных, скажем, CyrDB
, которая имеет кириллицу, а затем запросить вашу базу данных из контекста CyrDB
, например:
use CyrDB;
select *
from LatinDB.dbo.your_tbl
where address = 'какой-то там адрес' -- here I'm not using Unicode, no N character behind my string
Можно ли это исправить, например, через настройки сервера или базы данных, без
требуя префикс "N" и не теряя весь немецкий,
французский, ... акценты?
Если вы имеете в виду сохранение этих «акцентов» в наборе результатов, они будут сохранены, так как поле равно nvarchar
.
Если вы имеете в виду, что хотите ввести запрос в том же контексте Cyrillic
, вам следует уточнить, какие символы вы хотите потерять, если их коды ascii от 1 до 127, вы все равно можете использовать CyrDB
для запуска вашего запрос, но если ваши символы выше 128, и вы не хотите передавать их как Unicode
, вы должны использовать контекст другого БД с соответствующим сопоставлением