SELECT SYSDATE INTO dStatDate FROM dual;
dbms_output.put_line(dStatDate)dStatDate的输出的只是年月日,怎么可以把时分秒也输出呢?

解决方案 »

  1.   

    to_date('?????','yyyy-mm-dd') 这个和系统日期设置有关系!
    to_char('?????','yyyy-mm-dd')
      

  2.   

    先执行一下alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS';
      

  3.   

      嗯 这个执行过了  select sysdate from dule查出的结果已经是精确到时分秒的
      

  4.   

    select sysdate from dule执行出来已经是具体到时分秒的  这样的形式2009-3-19 15:13:30
    但SELECT SYSDATE INTO dStatDate FROM dual;
    dbms_output.put_line(dStatDate)中的dStatDate还是只有年月日没有后面的时间
      

  5.   

    to_char('?????','yyyy-mm-dd HH24:MI:SS')
      

  6.   

    SQL> set serveroutput on;
    SQL> begin
      2    declare 
      3      dStatDate date;
      4    begin
      5      select sysdate into dStatDate from dual;
      6      dbms_output.put_line(to_char(dStatDate,'yyyy-mm-dd hh24:mi:ss'));
      7    end;
      8  end;
      9  /
    2009-03-19 16:47:49PL/SQL 过程已成功完成。
      

  7.   

      谢谢楼上,这个打印出来看确实没问题,因为我是过程中途用dStatDate时间来做判断的,只传了一个年月日,没有具体的时间点,导致我后面结果有问题,我test看的中途变量的变化过程。只取到年月了 还是不晓得为什么