好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Orace查詢數據出現亂碼的問題解決思路

Orace查詢數據出現亂碼的問題解決思路

熱門標簽:北京外呼系統公司排名 溫州人工外呼系統 地圖標注付款了怎么找不到了 百度地圖標注員是干什么 外呼系統鄭州 外呼系統口號 北京營銷外呼系統廠家 沈陽400電話是如何辦理 貴陽智能電銷機器人官網
問題描述
經常有些朋友會遇到,我明明是輸入的正確中文,為什么我在另外一臺電腦上查詢卻出現亂碼啦?其實這個是數據庫在進行字符集轉換的時候出現了問題,
下面通過測試來描述具體的情況:

1.環境
Oracle 數據庫字符集:
Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
Connected as scott
SQL> SELECT * FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME = 'NLS_CHARACTERSET';
PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
------------------------------ -------------------------------------------------------------------------------- ------------------------------------------------------------------------------
NLS_CHARACTERSET ZHS16GBK Character set
Oracle 數據庫所在的客服端字符集:
在注冊表的:NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 如下圖:
 
Oracle 所在的操作系統的字符集:
Microsoft Windows [版本 6.1.7601]
版權所有 (c) 2009 Microsoft Corporation。保留所有權利。
C:\Users\Andy>chcp
活動代碼頁: 936
表示是:中國 - 簡體中文(GB2312)

2.測試
字符集如下:
Oracle 數據庫字符集:ZHS16GBK
Oracle 數據庫客戶端字符集:ZHS16GBK
操作系統字符集:中國 - 簡體中文(GB2312)
輸入測試數據:
SQL> INSERT INTO TAB_INDX
2 values(1,'漢字輸入字符集測試','Chinese Input Test',sysdate);
1 row inserted
字符集不修改,進行測試數據現實:
SQL> select * from tab_indx where tid = 1;
TID TNAME TDESC SYSDT
---------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -----------
1 漢字輸入字符集測試 Chinese Input Test 2012/12/30
顯示正常,
現在我把客服端的字符集修改為:UTF8
及注冊表的:NLS_LANG=SIMPLIFIED CHINESE_CHINA.UTF8
現在字符集如下:
Oracle 數據庫字符集:ZHS16GBK
Oracle 數據庫客戶端字符集:UTF8
操作系統字符集:中國 - 簡體中文(GB2312)
現在再查詢剛才輸入的數據:
SQL> select tname,tdesc from tab_indx;
TNAME TDESC
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
發現查詢出來的數據已經不能正?,F實,因為這些漢字是以ZHS16GBK編碼格式存儲的,然而你查詢出來后根據Oracle客服端的編碼(UTF8)轉換,及轉成了UTF8的編碼格式,但是操作系統是簡體中文(GB2312),所以操作系統就把UTF8編碼格式的數據,當成簡體中文(GB2312)的編碼格式數據顯示,結果就出現了亂碼,
現在我再插入一筆數據:
SQL> INSERT INTO TAB_INDX
2 values(1,'UTF8下漢字輸入字符集測試','Chinese Input Test',sysdate);
1 row inserted
再查詢:
SQL> select tname,tdesc from tab_indx;
TNAME TDESC
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
發現新插入的數據也出現了亂碼,但是亂碼跟剛才的值不一樣??為什么呢?
因為輸入的漢字,是簡體中文(GB2312)的編碼格式,當Oracle數據庫按照客戶端的編碼格式傳給數據庫,Oracle數據庫發現,Oracle數據庫客戶端是UTF8的編碼格式,跟數據庫的編碼格式(ZHS16GBK)不一樣,就進行字符集轉換,UTF8-->ZHS16GBK,所以把簡體中文(GB2312)的編碼格式的數據當成UTF8,轉為ZHS16GBK的編碼格式數據,就已經出錯啦,查詢出來自然轉換回去就不行啦
(本來需要測試Oracle數據庫的字符集修改后的情況,這種情況暫時不測試)這里我們在把Oracle客戶的字符集修改回去;
在注冊表的:NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
現在字符集如下
Oracle 數據庫字符集:ZHS16GBK
Oracle 數據庫客戶端字符集:ZHS16GBK
操作系統字符集:中國 - 簡體中文(GB2312)
再查詢:
SQL> select tname,tdesc from tab_indx;
TNAME TDESC
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
漢字輸入字符集測試 Chinese Input Test
UTF8????????????? Chinese Input Test
發現最開始輸入的漢字正常啦,但是第二次輸入的漢字,又變了,跟上次的亂碼不一樣????
雖然這里沒有進行編碼格式轉換,但是上次在存數據的時候,已經是存的錯誤的編碼格式,所以顯示出來肯定不正確
其實還有好幾種情況測試,由于本地環境的限制,所以測試的其它情況,大家可以去試試,如:數據庫的字符集是UTF8,然后客服端的字符集變化,對漢字的輸入輸出有什么影響
根據上面的測試情況和我自己的分析,現在總結如下:
1.數據庫的查詢出來的數據,是Oracle數據庫字符集,Oracle客戶端字符集,操作系統字符集共同作用的結果。
2.Oracle存數據和查詢數據都是通過Oracle數據庫的字符集和Oracle客服端的字符集進行轉換的,顯示數據又是根據操作系統的字符集來確定的。
3.為了避免出現亂碼必須要把Oracle客戶端的字符集和操作系統的字符集設置成一樣的。

標簽:潮州 淮北 定西 通遼 包頭 衢州 衡水 溫州

巨人網絡通訊聲明:本文標題《Orace查詢數據出現亂碼的問題解決思路》,本文關鍵詞  Orace,查詢,數據,出現,亂碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Orace查詢數據出現亂碼的問題解決思路》相關的同類信息!
  • 本頁收集關于Orace查詢數據出現亂碼的問題解決思路的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 蜜桃臀aⅴ精品一区二区三区| 制服师生av在线| 精品奶水区一区二区三区在线观看 | 国产露脸精品国语露脸直播| 日本肥妇大乳授乳| 好男人资源社区在线播放| 成人漫画免费无遮挡网站| 麻豆视频入口| 色欲AV秘?无码一区二区三区 | 全文都是肉肉的h文| 国产91?边播边对白| 极品少妇XXⅩOOO成人网站| 性欧美极品| 365天电影观看免费| 午夜深夜福利在线无| 被领导添下面好爽| 艳丽教师激情后宫小说| 1区1区3区4区产品乱码区| 麻豆精品无码久久久久久久久| 中文aV人妻aV无码中文视频| 狠狠人妻久久久久久综合jiu| 黃色一级A一片人与| 免费popnhub国产在线视频| 八戒八戒最新免费www视频| 国产精品无码午夜福利免费看| 亚洲gv猛男gv无码男同| 91久久香蕉国产线看观看软件| 99在线视频精品费观看视| 男人女人爽爽爽爽免费| 免费无码婬片AAAA片小说下载 | 台湾一级毛片免费播放| 成人app18秘?免费破解版| 人妻av无码专区久久绿巨人| 全黄冷激性性视频| 一级特黄aa大片欧美| 无限免费观看动漫日本| 欧美乱码精品一区二区三区卡 | 色偷偷摸摸| 老师脱??让学生摸??动漫 | 亚洲欧美久久| 巜调教爆乳护士|