NLS_DATABASE_PARAMETERS
NLS_INSTANCE_PARAMETERS
NLS_SESSION_PARAMETERS
这个三个有什么区别??
通常我们讲服务端字符集是指:NLS_DATABASE_PARAMETERS吗??
客户端字符集是指:NLS_INSTANCE_PARAMETERS??现在我注册表里的nls_lang是:SIMPLIFIED CHINESE_CHINA.ZHS16GBK,可是我安装oracle时明明是选的utf8,这又是什么原因呢?如果发生乱码,我应该怎么改呢?

解决方案 »

  1.   

    [A]数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。
    客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter,
    表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表会话字符集环境 select * from nls_session_parameters,其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameters一致。