设置NLS_DATE_FORMAT环境变量或是用alter session修改会话的参数,如:
SQL> alter session set NLS_DATE_FORMAT='yyyy/mm/dd HH24:MI:SS';会话已更改。SQL> select sysdate from dual;SYSDATE
-------------------
2003/06/30 10:02:19

解决方案 »

  1.   

    在服务器端:
    hkey_local_machine->software->oracle->NLS_DATE_FORMAT
    设置值'yyyy/mm/dd HH24:MI:SS',若没有增加一个
      

  2.   

    上面的是设置sql*plus里面的显示格式
    跟pb里面的显示没有关系不还没看懂为什么要转换成char
    怎么会显示不出来
      

  3.   

    sorry!首先我不能修改服务器端的设置!服务器的任何设置我都不能修改,因为是只是把数据取出来然后自己处理的.所以请另外帮我想办法.to: bzszp(SongZip) 最终我的数据是要在PB里面显示的.好像你会PB,那我就贴出我的datawindow的SQL语句你帮我看看:
    select sj1 starttime,sj2 endtime from
    ( select t1.mettime sj1,t2.mettime sj2,t2.mettime-t1.mettime sjc from
    (select rownum id1,mettime from cmetvalue1  
    where mettime > :as_query_time1
    and   mettime <=:as_query_time2
    and metid = :an_metid
    and meastype = :an_meastype
    and valuetype = :an_valuetype
    order by mettime) t1,
    (select rownum-1 id2,mettime from cmetvalue1  
    where mettime > :as_query_time1
    and   mettime <=:as_query_time2
    and metid = :an_metid
    and meastype = :an_meastype
    and valuetype = :an_valuetype
    order by mettime) t2
    where t1.id1=t2.id2(+)) 
    where sjc>:an_sjc
    order by  sj1
    上面的SQL语句显示正常,如下:
    starttime                    endtime
    2000-4-19 15:55:00          2001-11-1 01:00:00
    2001-11-1 23:00:00          2002-2-6 10:40:00
    2002-2-6 11:20:00          2002-8-1 00:00:00
    2002-8-23 08:00:00    2002-8-23 08:10:00
    2002-8-28 18:50:00          2002-9-1 00:00:00
    2002-10-28 16:55:00 2002-11-10 14:25:00
    2002-11-11 12:10:00 2002-12-2 10:00:00
    2002-12-2 14:20:00          2002-12-10 10:00:00
    2002-12-10 14:40:00 2003-1-10 14:25:00
    2003-1-14 05:30:00   2003-2-1 14:25:00
    2003-2-10 14:30:00          2003-4-15 00:00:00
    2003-4-15 08:55:00          2003-4-18 00:00:00
    2003-4-18 00:15:00          2003-4-18 12:00:00
    2003-4-18 15:55:00          2003-4-19 12:00:00
    2003-4-19 15:20:00          2003-5-20 16:00:00
    可以看到日期时间的字符个数是不一样的.
    为了显示的字符个数一样(为了美观),我把SQL语句修改成如下了:
    select sj1 starttime,sj2 endtime from
    ( select t1.mettime sj1,t2.mettime sj2,t2.mettime-t1.mettime sjc from
    (select rownum id1,mettime from cmetvalue1  
    where mettime > :as_query_time1
    and   mettime <=:as_query_time2
    and metid = :an_metid
    and meastype = :an_meastype
    and valuetype = :an_valuetype
    order by mettime) t1,
    (select rownum-1 id2,mettime from cmetvalue1  
    where mettime > :as_query_time1
    and   mettime <=:as_query_time2
    and metid = :an_metid
    and meastype = :an_meastype
    and valuetype = :an_valuetype
    order by mettime) t2
    where t1.id1=t2.id2(+)) 
    where sjc>:an_sjc
    order by  sj1数据就显示不正常了,本来有数据的地方都变成空行了.你能帮我解决吗?
      

  4.   

    不用修改数据窗口的语句吧
    修改数据窗口的edit标签中的format不行吗?