字符集轉換

racle11g導入數據時報以下錯誤,這是因爲原來數據庫的編碼是GBK的,每個漢字兩個字節,但新數據庫是UTF-8的,每個漢字是三個字節的,導致超過長度了。


  解決方法:


  打開cmd命令窗口,輸入“sqlplus /nolog”,進入“SQL>”的輸入符下,按照下面給出的命令一次執行就可以了。


  


複製代碼
SQL>connect username/password as SYSDBA;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
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
複製代碼
此時報錯,不必慌張。提示新字符集必須是超集,此時INTRENAL_USE指令不對字符集超集進行檢查。輸入以下命令即可:


SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP;
此時完成字符集轉換。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章