更正一下,PL/SQL里的结果如下:
NAME                           VALUE$
------------------------------ ----------------------------------------
DICT.BASE                      2
NLS_LANGUAGE                   AMERICAN
NLS_TERRITORY                  AMERICA
NLS_CURRENCY                   $
NLS_ISO_CURRENCY               AMERICA
NLS_NUMERIC_CHARACTERS         .,
NLS_CALENDAR                   GREGORIAN
NLS_DATE_FORMAT                DD-MON-YY
NLS_DATE_LANGUAGE              AMERICAN
NLS_CHARACTERSET               US7ASCII
NLS_SORT                       BINARY
NLS_NCHAR_CHARACTERSET         US7ASCII
NLS_RDBMS_VERSION              8.0.5.0.0
GLOBAL_DB_NAME                 P805.WORLD
EXPORT_VIEWS_VERSION           7

解决方案 »

  1.   

    诶,自己解决了,真郁闷!分都不知咋给,可以给自己吗?HOHO
    给个解答,以作参考:
    修改注册表:   
      从旧的数据库里获得字符集的键值:   
      有3个地方:   
      HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\NLS_LANG   
      HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG   
      HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID0\NLS_LANG   
      找到原数据库的键值,然后在新的数据库里对应的位置把键值复制过来就可以了。
      

  2.   

    楼主你从旧库里取的字符集是什么?
    把那几个键值也贴出来,我猜该不是us7ascii
      

  3.   

    我旧库里取出的字符集是ZHS16GBK,倒不是US7ASCII,但是
    connect sys/change_on_install 
    col value$ format a40 
    select name,value$ from props$;
    结果却是US7ASCII我猜想要么是我的安装文件本身有问题,要么是我先前装过9I,也许是没有卸载干净也有可能!
      

  4.   

    只改HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG 就行了。