各位大侠,Linux服务器上的Oracle版本是2.0.1.0,字符集是:AMERICAN_AMERICA.ZHS16GBK     Oracle客户端版本一致,操作系统式 Windows XP      并且PL/SQL Developer查出的原先的字符集为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK       根据网上提示说必须要字符集一致,我把注册表中KEY_OraClient10g_home1中的NLS_LANG值夜改成     AMERICAN_AMERICA.ZHS16GBK  结果重新登录连接之后注释还显示 "?"     补充一点:我重新创建带有注释的表,注释能显示中文,但我重新用PL/SQL Developer登录后表注释信息都显示“?”
 
     请各位大侠帮帮忙!!

解决方案 »

  1.   

    用sqlplus直接查user_tab_comments视图,看看comments是“?”还是正确内容。如果还是“?”,那么就在sqlplus中给表加注释,然后再查询user_tab_comments。
      

  2.   

    我所说的是某张表中的各个字段的注释都是 ?  怎么能显示出中文?根据楼主提供的方法 我查出后comments里是空值
      

  3.   


    不过我用的这条语句查出的还是显示 ?select   comments   from   user_col_comments   where   table_name='SUP';
      

  4.   

    su - oracle
    cd /home/oraclevi .bash_profile# 加入以下两行:
    export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
    ORA_NLS33=$ORACLE_HOME/nls/data; export ORA_NLS33# 然后将其操作系统支持中文
    copy /etc/sysconfig/i18n /etc/sysconfig/i18n.bak
    vi /etc/sysconfig/i18n# 加入以下几行:
    LANG="en_US.UTF-8" 
    LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" 
    SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" 
    SYSFONT="latarcyrheb-sun16" 
    SYSFONTACM="utf8"
      

  5.   


    # -- 最后一步,不是加入,而是替换(若你操作系统原来的语言是中文的话,
    # -- 第一行LANG=...可以将其保持不变!
    LANG="en_US.UTF-8" 
    LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN" 
    SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en" 
    SYSFONT="latarcyrheb-sun16" 
    SYSFONTACM="utf8"
      

  6.   

    是不是数据库字符集不正确,导致不支持中文
    show parameter nls_language
      

  7.   

    我LInux原来的操作系统是英文的 现在按照您所提供的方法修改之后操作系统是成了中文了 但表结构注释还是显示 “?”
      

  8.   

    数据库字符集就是AMERICAN_AMERICA.ZHS16GBK应该没问题