怎样让Oracle支持中文? 语言_地域.字符集(一)

2014-11-24 17:33:41 · 作者: · 浏览: 0

语言_地域.字符集
SIMPLIFIED CHINESE_CHINA.ZHS16GBK



set nls_lang='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'




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;



如果出现了 ERROR at line 1: ORA-12712: new character set must be a superset of old character set     



SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; # 使用INTERNAL_USE可以跳过超集的检查,



ALTER DATABASE character set INTERNAL_USE   



SQL>SHUTDOWN IMMEDIATE;   



SQL>STARTUP 再检查就发现已经把字符集修整过来了



NLS_LANG=AMERICAN_AMERICA.ZHS16GBK



##################################################################################################################



--当前会话的信息
SQL> select * from Nls_session_parameters;



PARAMETER VALUE
-------------------- ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTE .,
RS



NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FOR DD-MON-RR HH.MI.SSXFF AM TZR
MAT



NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE



17 rows selected.




--实例的信息
SQL> select * from Nls_instance_parameters;



PARAMETER VALUE
-------------------- ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_SORT
NLS_DATE_LANGUAGE
NLS_DATE_FORMAT
NLS_CURRENCY
NLS_NUMERIC_CHARACTE
RS



NLS_ISO_CURRENCY
NLS_CALENDAR
NLS_TIME_FORMAT
NLS_TIMESTAMP_FORMAT
NLS_TIME_TZ_FORMAT
NLS_TIMESTAMP_TZ_FOR
MAT



NLS_DUAL_CURRENCY
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE



17 rows selected.





--数据库的信息
SQL> select * from Nls_database_parameters;



PARAMETER VALUE
-------------------- ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTE .,
RS



NLS_CHARACTERSET WE8MSWIN1252
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FOR DD-MON-RR HH.MI.SSXFF AM TZR
MAT



NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERS AL16UTF16
ET



NLS_RDBMS_VERSION 11.2.0.3.0



20 rows selected.




SQL> select * from v$nls_parameters;



PARAMETER VALUE
---------------------------------------- ----------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_CHARACTERSET WE8MSWIN1252
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_NCHAR_CHARACTERSET AL16UTF16
N