久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Linux下Oracle 10g亂碼解決方案

 yfm10 2010-12-21
我在安裝數(shù)據(jù)庫的時候已經(jīng)選擇了UTF8作為數(shù)據(jù)庫字符集,但是在sqlplus和Oracle SQL Developer中插入數(shù)據(jù)后還是出現(xiàn)亂碼情況,。后來發(fā)現(xiàn)亂碼是客戶端造成的,。

ORACLE有兩方面的字符集,一是oracel server端的字符集,,二是oracle client端的字符集,。只有保證兩個字符集一致,并且所選的字符集要能支持中文,,才能不出亂碼,。

1.查看Oracel服務器端的字符集:
select userenv('language') from dual;
我的結果是:
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.AL32UTF8
2.查看Oracle客戶端的字符集:
$ echo $NLS_LANG
我出現(xiàn)亂碼時顯示的結果為空。

后來編輯.bashrc文件,,導入NLS_LANG環(huán)境變量,,將其設置為AMERICAN_AMERICA.AL32UTF8后,注銷用戶再登錄,,讓環(huán)境變量生效后,,在用sqlplus時,亂碼問題就搞定了,。

在linux下若安裝oracle沒有選擇ZHS16GBK,,則在處理漢字時會有亂碼情況出現(xiàn),。解決方法:
 命令行模式下執(zhí)行sqlplus "/as sysdba",以sysdba身份進入sqlplus,先執(zhí)行sql語句:select * from sys.props$,,查看NLS_CHARACTER的值,,若不是"ZHS16GBK",則可運行sql語句:update sys.props$ set value$='ZHS16GBK' where name='NLS_CHARACTERSET'
 
執(zhí)行完畢后,,停止數(shù)據(jù)庫(sqlplus中使用sysdba登陸,,執(zhí)行shutdown命令),然后啟動數(shù)據(jù)庫,,啟動實例(startup),插入漢字成功,。
 
經(jīng)測試,該種方式由于修改了字符集的系統(tǒng)設置,,畢竟是不妥當?shù)?我們后來發(fā)現(xiàn)備份表空間失敗問題,,疑似由此引起),最好的辦法還是重新創(chuàng)建數(shù)據(jù)庫,,創(chuàng)建時選擇字符集為“ZHS16GBK”

    本站是提供個人知識管理的網(wǎng)絡存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內(nèi)容,,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多