1. 程式人生 > >oracle資料庫亂碼解決,字符集編碼問題

oracle資料庫亂碼解決,字符集編碼問題

一、問題描述:

       在將其它資料庫的資料匯出檔案匯入本地新建資料庫時,所匯入的資料全部是亂碼,一般表現為資料表中列的值類似於"?????",即內容大部分為?的表現形式。初步判斷是因為Oracle客戶端與資料庫編碼不一致所導致。亂碼問題在各類技術很多地方都普遍可能存在,其根本原因主要是資料編碼不一致導致。根據其原理排查資料編碼,基本都可以解決亂碼問題。
 

    第一步:就Oracle資料庫而言,可以使用sqlplus工具或者PL/SQL工具,登入資料庫後,執行  select userenv('language') from dual;語句,該語句可以查詢當前資料庫所使用的編碼格式。這裡使用plsql登入資料庫,並執行上述查詢語句,如下圖所示:

              第二步:新增系統環境變數NLS_LANG,將其值與資料庫編碼設定保持一致,即上一步查詢的查詢結果SIMPLIFIED CHINESE_CHINA.ZHS16GBK。點選儲存即可。

 

         第三步:關閉當前的客戶端查詢工具,重新開啟檢視和驗證是否已經恢復正常的中文編碼。