oracle 中的timestamp字段的值乱码问题修改

我的解决方案:

直接新增一个系统变量:

oracle 中的timestamp字段的值乱码问题修改

key值为:NLS_TIMESTAMP_FORMAT
value的值为:YYYY-MM-DD HH24:MI:SSFF6

其它解决方案:

在登录PLSQL之后,查询相应数据库数据时,发现PLSQL的timestamp显示乱码,如下图所示。

oracle 中的timestamp字段的值乱码问题修改

查询数据库服务器端字符集编码,使用如下命令: select userenv('language') from dual

    

结果如下:SIMPLIFIED CHINESE_CHINA.AL32UTF8

 

在环境变量中设置NLS_LANG = ‘SIMPLIFIED CHINESE_CHINA.AL32UTF8’

 

重启终端后,发现问题依然存在。不是中文环境问题环境变量的问题。从另一个方面分析,其他字段的中文显示并没有乱码,从这二者差异上看应该是timstamp类型的数据乱码。需要进一步分析下原因。

 

后经过google查询得知,可以单独设置时间戳的环境变量NLS_TIMESTAMP_FORMAT,数据值为YYYY-MM-DD HH24:MI:SS:FF6

 

      两种方法可以设置: 1 修改regedit的注册表

                                           2 修改系统环境变量

 

   重启,测试时间戳乱码问题解决。如下图所示:

oracle 中的timestamp字段的值乱码问题修改