修改DB的原因是:因?yàn)槲业腄B不支持中文,,所以每當(dāng)我向數(shù)據(jù)庫表中插入一條數(shù)據(jù)的時(shí)候,中文就都變了類似于“?(是反問號(hào))”的亂碼,,為了能順利插入成功,,故做了此次修改; 系統(tǒng):windows XP 英文版 Oracle DB version: 10.2.0.1.0 獲取DB的最初的編碼: select userenv('language') from dual; AMERICAN_AMERICA.WE8MSWIN1252 修改方法(以改成UTF8為例) 修改注冊(cè)表: regedit--->打開注冊(cè)表:
HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/key_XE
雙擊NLS_LANG, 修改其值為UTF8 然后 運(yùn)行-->Cmd -- > sqlplus--> 以高級(jí)管理員的權(quán)限登錄進(jìn)去 sqlplus sys/oracle as sysdba --conn as sysdba/ ---username: sysdba; password: admin(以個(gè)人電腦為主); 首先查看一下你DB的編碼 select userenv('language') from dual; 然后一句一句執(zhí)行以下代碼: SQL> shutdown immediate;
SQL> startup mount;
SQL> alter system enable restricted session;
SQL> alter system set job_queue_processes=0;
SQL> alter database open;
SQL> alter database character set internal_use AL32UTF8(或者是UTF8);
SQL> shutdown immediate;
SQL> startup
SQL>alter system disable restricted session;
注意: 執(zhí)行完別忘記了執(zhí)行最后一句,,否則可能后續(xù)很多事情都做不了
以上如果都執(zhí)行成功后,,可再次查詢DB編碼 select userenv('language') from dual;
我的查詢結(jié)果為:AMERICAN_AMERICA.AL32UTF8
證明DB的編碼已改為UTF-8了;
經(jīng)過第二次測(cè)試,不用修改注冊(cè)表似乎也可修改成功??!
修改成功!
|
|