使用PL/SQL查询数据库数据的时候,如果时间格式为时间戳TIMESTAMP,那么查询结果数据显示就很异样!
其实使用 to_char 函数转换后得到如下结果
示例:
SELECT TO_CHAR(TO_DATE(‘2008-01-29 00:05:10’, ‘yyyy-mm-dd hh24:mi:ss’),‘yyyy-mm-dd hh:mi:ss am’) FROM DUAL
解决方法:
为了能直接修改时间,我们只需要在系统属性-高级-环境变量-系统变量 中增加如下设置:
NLS_TIMESTAMP_FORMAT
YYYY-MM-DD HH24:MI:SS:FF6
pl/sql developer 中读取的是注册表中设置的 NLS_TIMESTAMP_FORMAT 格式,那么只要在注册表中设置 Oracle 环境变量的地方(也就是设置 ORACLE_HOME 的地方)设置 NLS_TIMESTAMP_FORMAT 的格式(也就是创建这样一个字符串项,然后设置它的值为你转换需要的掩码,一般设置为 YYYY-MM-DD HH24:MI:SS:FF6),然后关掉 PL/SQL DEVELOPER,再继续登陆,以后我们看到的 TIMESTAMP 时间就会自动转换成大家需要的格式了。
部分转载自:https://blog.csdn.net/rosanu_blog/article/details/7969937