用 select sysdate from dual  查看的时候,是好的,但是在库中看到的,就是 12制的

解决方案 »

  1.   

    数据库中怎么存放的 跟客户端以什么形式 显示 没什么关系
    alter session 命令只是修改 当前连接会话的 参数值,而不是整个数据库的。
    因此
    你可以使用to_char(..,'yyyy-mm-dd hh24:mi:ss') 来转换。
      

  2.   

    还是不太明白,为什么有的服务器上的时候是好的,这次系统重装过了,就不行了,要是改为to_char 那得所有的地方都要改,这个工作量就太大了
      

  3.   

    1)我没用过toad,但用过pl/sql dev,它的date型数据显示方式是由本身的配置参数来决定的,我估计可能是覆盖了nls_date_format参数的影响,所以nls_date_format参数的值在pl/sql dev环境中是不起作用的。toad也可能是同样的情况。
    2)date型数据在数据库中的储存方式是一致的,但在不同的客户端它的显示却是不一样的,1)中也说了nls_date_format不是对所有客户端都起作用的,所以在开发程序时,有关date的显示时最好就用to_char,毕竟字符串型的数据在所有客户端的显示方式都是一样的。
      

  4.   

    up,是啊,反是用到日期的数据时候,我大多转化为用to_char转换一下,这样比较统一