sqlserver亂碼
『壹』 sql server2005遠程連接oracle11g查詢結果中文亂碼,怎麼解決
遠程連接oracle11g查詢結果中文亂碼是客戶端和服務端編碼設置不同引起的。
1、檢查windows7下面cmd裡面sqlplus中oracle
server端的字元集。
打開cmd,用sqlplus登錄,輸入下面SQL查詢服務端的字元集。
2、去後台linux查看字元集編碼,
(1),查看profile文件
[oracle@powerlong4
~]$
vim/home/oracle/.bash_profile
export
LANG=en_US.gbk
export
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
(2),查看資料庫的userenv
SQL>
select
userenv('language')
fromal;
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
改成ZHS16GBK就不會有中文亂碼了。
『貳』 sql查詢的數據出現亂碼問題
1。select * from v$nls_parameters
查詢nls的參數,獲得資料庫伺服器端的字元編碼
NLS_LANGUAGE
NLS_CHARACTERSET
2。修改本地環境變數,設置
NLS_LANG = SIMPLIFIED CHINESE.ZHS16GBK //這個是我們的資料庫字元編碼
NLS_LANG格式:
NLS_LANG = language_territory.charset
有三個組成部分(語言、地域和字元集),每個成分控制了NLS子集的特性。其中:language 指定伺服器消息的語言。
territory 指定伺服器的日期和數字格式。
charset 指定字元集