--查看数据库字符集
select * from nls_database_parameters a where a.parameter='NLS_CHARACTERSET'
把注册表中的设置和看到的一样.

解决方案 »

  1.   

    `显示了乱码后,再查看一下注册表和select * from nls_database_parameters a where a.parameter='NLS_CHARACTERSET'
    是否一样?
      

  2.   

    怎么样查看数据库字符集 
    [A]数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。 
      客户端字符集环境select * from nls_instance_parameter,其来源于v$parameter, 
    表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表 
      会话字符集环境 select * from nls_session_parameter,其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameter一致。 
      客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。如果多个设置存在的时候,alter session>环境变量>注册表>参数文件 
      字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American_America.zhs16gbk。
      

  3.   

    执行了数据库服务器字符集select * from nls_database_parameters后的信息是:
    PARAMETER                      VALUE
    ------------------------------ --------------------------------------------------------------------------------
    NLS_LANGUAGE                   AMERICAN
    NLS_TERRITORY                  AMERICA
    NLS_CURRENCY                   $
    NLS_ISO_CURRENCY               AMERICA
    NLS_NUMERIC_CHARACTERS         .,
    NLS_CHARACTERSET               ZHS16GBK
    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_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_DUAL_CURRENCY              $
    NLS_COMP                       BINARY
    NLS_LENGTH_SEMANTICS           BYTE
    NLS_NCHAR_CONV_EXCP            FALSE
    NLS_NCHAR_CHARACTERSET         AL16UTF16
    NLS_RDBMS_VERSION              9.2.0.1.020 rows selected.执行了客户端字符集环境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_CHARACTERS
    NLS_ISO_CURRENCY
    NLS_CALENDAR
    NLS_TIME_FORMAT
    NLS_TIMESTAMP_FORMAT
    NLS_TIME_TZ_FORMAT
    NLS_TIMESTAMP_TZ_FORMAT
    NLS_DUAL_CURRENCY
    NLS_COMP
    NLS_LENGTH_SEMANTICS                                         BYTE
    NLS_NCHAR_CONV_EXCP                                          FALSE17 rows selected.然后执行了 会话字符集环境 select * from nls_session_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_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_FORMAT                                      DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_DUAL_CURRENCY                                            $
    NLS_COMP                                                     BINARY
    NLS_LENGTH_SEMANTICS                                         BYTE
    NLS_NCHAR_CONV_EXCP                                          FALSE17 rows selected.
    问题依旧。
      

  4.   

    alter session set nls_territory='CHINA';