各位大哥小弟想问一下我在表的一个字段(类型为data)设置的是系统默认时间 sysdate但是系统默认时间类型是  2008-5-22 11:54:25 这样  我想在plsql里面把系统时间的格式改成 2008-05-22 11:54:25但是我只要改我本张表,而对其他表的默认时间格式不改应该怎么改  谢谢各位大哥了

解决方案 »

  1.   

    TO_DATE(TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS')
    看起来比较恶心,不知道有没其他的方法
      

  2.   

    先把系统时间由date类型,to_char一下转换字符类型:to_char(sysdate,'yyyy-mm-dd hh24:mi:ss');
    再把字符类型的系统时间转换成日期型(date),to_date(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss');
      

  3.   

    问一下,你有几张表?不是只有一个表吗?
    如果表多可以做视图,需要这种格式的就查这个视图。
    create or replace view 视图名 as
    select a.*
          ,to_char(a.字段1,'yyyy-mm-dd hh24:mi:ss') 新名称
      from 表名 a
      

  4.   

    alter session set nls_date_format='yyyy-dd-mm hh24:mi:ss';
      

  5.   

    我想在plsql里面把系统时间的格式改成 2008-05-22 11:54:25 
    =====================================================
    概念问题,date 数据类型的存储格式是固定的,不能修改,可以修改的是时间的显示格式。
    可以用楼上的方法修改session的日期显示格式。
      

  6.   

    修改Oracle时间月份必须加月~ 例如:insert into a values('2008-05月-21');