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