oracle亂碼怎么設置,oracle命令行亂碼

oracle數據導出spool方式,中文出現亂碼是什么原因?

一般來說,oracle數據導出spool方式,中文出現亂碼,這情況是因為數據庫服務器和客戶端字符集不匹配,執行sqlplus的機器就是客戶端,服務器和客戶端也可能是一臺機器,執行sqlplus之前要先設置客戶端的字符集,在linux上:export NLS_LANG=.......

為永康等地區用戶提供了全套網頁設計制作服務,及永康網站建設行業解決方案。主營業務為網站設計制作、成都做網站、永康網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

在windows上set NLS_LANG查詢數據庫字符集:select property_value from database_properties where property_name like 'NLS_CHAR%';

1、比如查詢結果是:ZHS16GBK

那你在sqlplus之前要設置:export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

然后再登錄sqlplus用spool生成數據

檢查下你導出時候的環境變量,導入時的環境變量

2、比如導出時NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

導入時NLS_LANG沒有設置,或者設置為其他字符集,則導入的庫內漢字就有可能變成亂碼。

解決方法,連接數據庫的時候設置正確字符集即可。

Oracle數據出現中文亂碼怎么解決

1. 服務器指定字符集與客戶字符集不同,而與加載數據字符集一致。

解決方法:對于這種情況,只需要設置客戶端字符集與服務器端字符集一致就可以了,具體操作如下:

* 查看當前字符集:

SQL select * from sys.props$

2 WHERE NAME=‘NLS_CHARACTERSET’;

NAME value$

NLS_CHARACTERSET ZHS16GBK

可以看出,現在服務器端Oracle數據庫的字符集為‘ZHS16GBK’

* 根據服務器的字符集在客戶端作相應的配置或者安裝Oracle的客戶端軟件時指定:

如果還沒安裝客戶端,那么在安裝客戶端時,指定與服務器相吻合的字符集即可;如果已經安裝好了客戶端,并且客戶端為 sql*net 2.0 以下版本,進入Windows的系統目錄,編輯oracle.ini文件,用US7ASCII替換原字符集,重新啟動計算機,設置生效;否則,如果,客戶端為 sql*net 2.0 以上版本,在Win98 下 運 行REGEDIT,第一步選HKEY_LOCAL_MACHINE,第二步選擇SOFTWARE, 第三步選擇 Oracle, 第四步選擇 NLS_LANG, 鍵 入 與服 務 器 端 相 同 的 字 符 集

(本例為:HKEY_LOCAL_MACHINE/

SOFTWARE/ORACLE/NLS_LANG :AMERICAN _ AMERICA. ZHS16GBK)。

如果是UNIX客戶端,則:

SQL conn / as sysdba

Connected.

SQL SQL UPDATE sys.PROPS$ SET value$=‘SIMPLIFIED CHINESE’

2 WHERE NAME=‘NLS_LANGUAGE’;

2. 服務器指定字符集與客戶字符集相同,與加載數據字符集不一致。

解決方法:強制加載數據字符集與服務器端字符集一致。要做到這一點,可以通過重新創建數據庫,并選擇與原卸出數據一致的字符集,然后IMP數據,這種情況僅僅適用于空庫和具有同一種字符集的數據。

解決這類問題,也可以先將數據加載到具有相同字符集的服務器上,然后用轉換工具卸出為foxbase 格式或access格式數據庫,再用轉換工具轉入到不同字符集的Oracle數據庫中,這樣就避免了Oracle字符集的困擾。目前數據庫格式轉換的工具很多,像power builder5.0以上版本提供的pipeline及Microsoft Access數據庫提供的數據導入/導出功能等。

3. 服務器指定字符集與客戶字符集不同,與輸入數據字符集不一致。

對于這種情況,目前為止都還沒有太好的解決方法。

通過上面的了解,我們知道,導致在后期使用數據庫時出現種種關于字符集的問題,多半是由于在數據庫設計、安裝之初沒有很好地考慮到以后的需要,所以,我們完全可以通過在服務器上和客戶端使用相同的字符集來避免由此類問題引出的麻煩

怎樣修改查看Oracle字符集

a.數據庫服務器字符集select * from nls_database_parameters,其來源于props$,是表示數據庫的字符集。

b.客戶端字符集環境select * from nls_instance_parameters,其來源于v$parameter,

表示客戶端的字符集的設置,可能是參數文件,環境變量或者是注冊表

c.會話字符集環境 select * from nls_session_parameters,其來源于v$nls_parameters,表示會話自己的設置,可能是會話的環境變量或者是alter session完成,如果會話沒有特殊的設置,將與nls_instance_parameters一致。

客戶端的字符集要求與服務器一致,才能正確顯示數據庫的非Ascii字符。如果多個設置存在的時候,alter session環境變量注冊表參數文件

實際情況

我用select * from nls_database_parameters

PARAMETER VALUE

------------------------------ ------------------------------

NLS_LANGUAGE AMERICAN

NLS_TERRITORY AMERICA

NLS_CURRENCY $

NLS_ISO_CURRENCY AMERICA

NLS_NUMERIC_CHARACTERS .,

NLS_CHARACTERSET ZHS16GBK

NLS_CALENDAR GREGORIAN

NLS_DATE_FORMAT DD-MON-RR

NLS_DATE_LANGUAGE AMERICAN

NLS_SORT BINARY

NLS_TIME_FORMAT HH.MI.SSXFF AM

PARAMETER VALUE

------------------------------ ------------------------------

NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM

NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR

NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR

NLS_DUAL_CURRENCY $

NLS_COMP BINARY

NLS_LENGTH_SEMANTICS BYTE

NLS_NCHAR_CONV_EXCP FALSE

NLS_NCHAR_CHARACTERSET AL16UTF16

NLS_RDBMS_VERSION 10.2.0.1.0

說明我在創建數據庫時指定的字符集是ZHS16GBK,我用

update sys.props$ set value$='AL32UTF8' where name='NLS_CHARACTERSET';

修改了字符集,但插入中文時仍然有問題,這或許就如上面資料所說的通過修改SYS.PROPS$來修改主要是對應客戶端的顯示,與存儲無關,

所以仍舊是亂碼。

然后我重新創建了個數據庫,指定字符集為AL32UTF8,插入中文就沒問題了。

可見我們如果要在數據庫中顯示中文,在創建數據庫時一定喲指定好所用的字符集。

oracle表的partition名亂碼

oracle表的partition名亂碼查詢:

1、查看服務器端編碼

Select userenv('language') from dual;

我實際查到的結果為: AMERICAN_AMERICA.UTF8(每人查到的可能不一樣)

2、執行語句 select * from V$NLS_PARAMETERS

查看第一行中PARAMETER項中為NLS_LANGUAGE對應的VALUE項中是否和第一步得到的值一樣。

如果不是,需要設置環境變量。

3、設置環境變量

計算機--屬性-- 高級系統設置-- 環境變量 --系統環境變量--新建

設置變量名:NLS_LANG

變量值:第1步查到的值,AMERICAN_AMERICA.UTF8(以你第一步查到的為準)

分享題目:oracle亂碼怎么設置,oracle命令行亂碼
文章源于:http://m.kartarina.com/article0/hegdio.html

成都網站建設公司_創新互聯,為您提供電子商務品牌網站建設服務器托管品牌網站設計網站制作定制網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
主站蜘蛛池模板: 国产久热精品无码激情| 东京热一精品无码AV| 亚洲AV中文无码乱人伦下载 | 免费无码又爽又高潮视频| 亚洲AV无码一区二区三区鸳鸯影院 | 中文有码无码人妻在线| 成人麻豆日韩在无码视频| 亚洲AV中文无码字幕色三| 免费人成无码大片在线观看| 亚洲av激情无码专区在线播放| 国产在线精品无码二区二区 | 精品无码久久久久久久久水蜜桃| 天堂Aⅴ无码一区二区三区| 无码精品一区二区三区| 免费无遮挡无码永久视频| 中文国产成人精品久久亚洲精品AⅤ无码精品| 日韩精品人妻系列无码专区免费 | 亚洲爆乳无码精品AAA片蜜桃| 久久亚洲AV永久无码精品| 麻豆人妻少妇精品无码专区| 亚洲国产成人无码AV在线影院| 亚洲AV无码专区国产乱码电影| 亚洲AV中文无码乱人伦在线视色| 亚洲成a∧人片在线观看无码| 亚洲AV无码久久久久网站蜜桃| 一夲道无码人妻精品一区二区| 无码专区一va亚洲v专区在线| 人妻精品无码一区二区三区| 亚洲熟妇无码av另类vr影视| 人妻系列无码专区无码中出| 日韩免费无码一区二区三区| 亚洲AV日韩AV永久无码下载| 成人午夜精品无码区久久| 亚洲AV永久无码精品一区二区国产| 韩国无码AV片在线观看网站| 亚洲av无码国产精品色在线看不卡 | 无码人妻一区二区三区免费n鬼沢| 精选观看中文字幕高清无码| 国产成人亚洲综合无码| 免费看成人AA片无码视频吃奶| 无码日韩精品一区二区人妻 |