Я работаю с базой данных SQL Server; кодировка экземпляра базы данных "SQL_Latin1_General_CP1_CI_AS".
Следующий код:
UPDATE ...
SET field = CHAR(136)
WHERE...
помещает в поле следующий символ: ˆ
Но! В кодовой таблице Latin1 коды 127-159 просто не определены! Как он вставляет этот символ?
И что еще более сбивает с толку, когда я читаю значение этого поля в строковую переменную на C# и преобразовываю его в char, я получаю код 710 вместо 136.
Я попытался использовать преобразование кодировки:
var latin1Encoding = Encoding.GetEncoding("iso-8859-1");
var test = latin1Encoding.GetBytes(field); // field is a string read from db
Но в этом случае я получаю код 94, который является ^ (выглядит похоже, но это не то же самое, и мне нужно точно такое же).