方法:1、關閉數(shù)據(jù)庫后利用“startup mount;”以mount方式啟動數(shù)據(jù)庫;2、利用“alter system set job_queue_processes=0;…”語句啟用嚴格模式;3、用“alter database character set internal_use 編碼”修改編碼;4、重新啟動數(shù)據(jù)庫即可。
本教程操作環(huán)境:windows10系統(tǒng)、Oracle 11g版、Dell G3電腦。
怎么修改oracle數(shù)據(jù)庫編碼
以ZHS16GBK -> AL32UTF8為例
1、先啟動數(shù)據(jù)庫
如果oracle服務在運行,則無需啟動
startup;
關閉數(shù)據(jù)庫
shutdown immediate;
再以mount方式啟動數(shù)據(jù)庫
startup mount;
2、啟用嚴格模式
3、進行編碼
ALTER DATABASE CHARACTER SET AL32UTF8;
這會可能會報錯,提示我們的字符集:新字符集必須為舊字符集的超集,這時我們可以跳過超集的檢查做更改:
ALTER DATABASE character set INTERNAL_USE AL32UTF8;
這條語句就可以了,TERNAL_USE提供的幫助就會使oracle繞過了子集與超集的驗證,這條語句和上面的語句內(nèi)部操作時完全相同的。
4、重啟數(shù)據(jù)庫
關閉數(shù)據(jù)庫
shutdown immediate;
啟動數(shù)據(jù)庫
startup;
推薦教程:《Oracle視頻教程》