select * from nls_data_parameters 和 select * from v$nsl_parameters这俩有啥区别。nls_language 一个查出来是american,一个是simplified chinese。求解释。

解决方案 »

  1.   

    另外昨天去银行部署程序。我同事本机导了个.dmp出来,结果在银行导入dmp的时候,说字符集不符-。-
    我同事机器上的oracle版本和银行的是一样的。
    然后我用select * from nls_data_parameters 查了下,和银行的设置也是一样的。最后无奈改成导SQL了。
    这又是因为啥呢-。- 求解释。
      

  2.   

    次奥,总共俩表名,你才写错了一对。1、nls_database_parameters来源于props$,是表示数据库的字符集。在创建数据库的时候设定的,一般不会改变.
    2、v$nls_parameters 显示当前会话值 ,他受客户端nls 的控制。所以2个视图的查询结果是可能不一样的。 
      

  3.   

    楼上正解,
    补充点,
    V$NLS_PARAMETERS视图给出了当前的SESSION参数以及NLS_DATABASE_PARAMETERS视图中的2个CHARACTERSET参数:NLS_CHARACTERSET and NLS_NCHAR_CHARACTERSET 参数