, 第四步选择 NLS_LANG, 键 入 和服 务 器 端 相 同 的 字 符 集
(本例为:HKEY_LOCAL_MACHINE\
SOFTWARE\ORACLE\NLS_LANG :AMERICAN _ AMERICA. ZHS16GBK)。
如果是UNIX客户端,则:
SQL> conn / as sysdba
Connected.
SQL> SQL> UPDATE sys.PROPS$ SET VALUE$=‘SIMPLIFIED CHINESE’
2 WHERE NAME=‘NLS_LANGUAGE’;
1 row updated
SQL> COMMIT;
Commit complete
SQL>
2. 服务器指定字符集和客户字符集相同,和加载数据字符集不一致。
解决方法:强制加载数据字符集和服务器端字符集一致。要做到这一点,能通过重新创建数据库,并选择和原卸出数据一致的字符集,然后IMP数据,这种情况仅仅适用于空库和具有同一种字符集的数据。
解决这类问题,也能先将数据加载到具有相同字符集的服务器上,然后用转换工具卸出为foxbase 格式或access格式数据库,再用转换工具转入到不同字符集的Oracle数据库中,这样就避免了Oracle字符集的困扰。目前数据库格式转换的工具非常多,像power builder5.0以上版本提供的pipeline及Microsoft Access数据库提供的数据导入/导出功能等。
3. 服务器指定字符集和客户字符集不同,和输入数据字符集不一致。
对于这种情况,目前为止都还没有太好的解决方法。
通过上面的了解,我们知道,导致在后期使用数据库时出现种种关于字符集的问题,多半是由于在数据库设计、安装之初没有非常好地考虑到以后的需要,所以,我们完万能通过在服务器上和客户端使用相同的字符集来避免由此类问题引出的麻烦。