我向orcal数据库的表中插入数据时,是中文的就出现乱码,全是问号。上网查了查,说是字符集的问题。解决的办法和步骤,有知道的吗?

解决方案 »

  1.   

    windows修改注册表NLS_LANG   oracle10g的位置,你如果不同的可以搜一下
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1\
    修改值为
    SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    当然要看你服务端的字符集是什么。
    如果有其他机器好是正常的话,可以参照其他机器。查看NLS_LANG的值
      

  2.   

    是不是手动插入就没有这个问题?如果是程序插入就会是乱码?
    如果是这样的话,那么就应该是你操作的SQL语句有问题。
    你应该尽量用_bstr_t或BSTR字符串类型来执行数据库操作,并且用_T()或L宏来让字符串国际化。
      

  3.   

    顶二楼,根据你的具体情况修改NLS_LANG字符串的值试试!