真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何通過ZHS16GBK和AL32UTF8字符編碼分析exp/imp

如何通過ZHS16GBK和AL32UTF8字符編碼分析exp/imp,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)建站長期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為古縣企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計,古縣網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

實驗環(huán)境:vmware server + rhel5.4(英文版操作系統(tǒng))+oracle10g 

問題描述:同事在Linux下安裝的Oracle,默認(rèn)的字符集沒有修改,使用的是WE8ISO8859P1,不能夠支持中文,

問題表現(xiàn)為,客戶端錄入的中文數(shù)據(jù)可以顯示,提交之后再查詢出來后中文會顯示為???。問題出在oracle服務(wù)端的字符集不支持中文導(dǎo)致。

可以通過:

select   userenv('language')   from   dual; 命令可以查看服務(wù)端的使用的字符集。

或者select   *   from   V$NLS_PARAMETERS;命令也可以

以及 select * from SYS.PROPS$;

確定了問題后就Google了一下,網(wǎng)上倒是有很多這方面的資料。可能是自己的環(huán)境和他們的不一致的原因,按照網(wǎng)上的那些步驟我的問題沒有解決。

問題根源找到了就好解決了,參考著網(wǎng)上的資料自己的解決步驟如下:

總的來說有兩個思路:

1、重新安裝

2、修改字符集

注:第一個方法沒有用,覺得重裝不是我喜歡的道道,解決問題是根本。所以我選擇的是第二種方式。

網(wǎng)上很多人說,oracle服務(wù)端安裝好了之后字符集是不可以更改的,實踐證明是可以修改的,至少oracle8以上的版本都是可以修改的。

我的解決步驟:

1、ssh登錄,切換到oracle用戶

切換用戶命令:su -oracle

之后用sqlplus登錄oracle,命令:

:sqlplus /nolog

:connect /as sysdba

這樣就登錄了。

2、更改字符集

首先 sqlplus登錄后,關(guān)閉oracle數(shù)據(jù)庫

1.shutdown immediate ;    
2.startup mount ;    
3.alter  system enable restricted session ;     
4.alter  system  set  JOB_QUEUE_PROCESSES=0;     
5.alter  system  set  AQ_TM_PROCESSES=0;     
6.alter   database   open  ;     
7. alter database character set INTERNAL_USE ZHS16GBK;     
8.shutdown immediate ;    
9.startup ;    

注:一開始我按照上面的步驟沒有解決,因為在第7步的時候有的資料提示使用alter database character set ZHS16GBK;我試過,這個命令不行,我使用的是alter database character set INTERNAL_USE ZHS16GBK; 提示修改成功。同樣,如果在startup mount 下命令提示error的話,可以嘗試在startup restrict下運行第七步的命令。

以下是我的調(diào)試命令記錄,大家可以參考一下,那些提示錯誤的命令都是執(zhí)行失敗的,可以不必管。

SQL> conn /as sysdba
Connected.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area  285212672 bytes
Fixed Size                  1218992 bytes
Variable Size             104859216 bytes
Database Buffers          176160768 bytes
Redo Buffers                2973696 bytes
Database mounted.
SQL> alter system enable restricted session;

System altered.

SQL> alter system set job_queue_processes=0;

System altered.

SQL> alter system set aq_tm_processes=0;

System altered.

SQL> alter database open;

Database altered.

----這是按照網(wǎng)上的步驟執(zhí)行,但是命令都執(zhí)行失敗,所以這些命令對我的環(huán)境來說是不行的
SQL> alter database character set ZHS16GBK;
alter database character set ZHS16GBK
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character set

---我也嘗試了換用其它的字符集,也是不行,同樣報錯
SQL> alter database character set AL32UTF8;
alter database character set AL32UTF8
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character set

---至此網(wǎng)上的步驟調(diào)試失敗,所以我繼續(xù)查資料,又進(jìn)行了如下的調(diào)試

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup restrict
ORACLE instance started.

Total System Global Area  285212672 bytes
Fixed Size                  1218992 bytes
Variable Size             113247824 bytes
Database Buffers          167772160 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.

---一開始我是用的是如下的命令,結(jié)果失敗
SQL> alter database character set simplified chinese_china.zhs16gbk;
alter database character set simplified chinese_china.zhs16gbk
                                        *
ERROR at line 1:
ORA-00933: SQL command not properly ended

--我嘗試了兩次,改成大寫也不行,
SQL> alter database character set simplified CHINESE_CHINA.ZHS16GBK;
alter database character set simplified CHINESE_CHINA.ZHS16GBK
                                        *
ERROR at line 1:
ORA-00933: SQL command not properly ended

--最后,我使用了這命令,提示執(zhí)行成功,之后通過測試中文亂碼問題解決
SQL> alter database character set INTERNAL_USE ZHS16GBK;

Database altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area  285212672 bytes
Fixed Size                  1218992 bytes
Variable Size             113247824 bytes
Database Buffers          167772160 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.
SQL>

關(guān)于如何通過ZHS16GBK和AL32UTF8字符編碼分析exp/imp問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。


當(dāng)前標(biāo)題:如何通過ZHS16GBK和AL32UTF8字符編碼分析exp/imp
文章出自:http://weahome.cn/article/gcpges.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部