我正在使用SQL Server數據庫;數據庫實例編碼是「SQL_Latin1_General_CP1_CI_AS」。SQL Server上的編碼問題
下面的代碼:
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這是^(看起來相似,但它不一樣,我需要完全相同)。
如果你想要的東西是完全一樣的,我想你應該使用二進制整理。跨不同編碼的轉換始終是有損的。 –