oracle中的时间类型是什么??我是说只存储小时分秒,不存储日期的类型。。有没有啊,如果没有的话,存时间一般是怎么处理的?谢谢大家了

解决方案 »

  1.   

    当省略HH、MI和SS对应的输入参数时,Oracle使用0作为DEFAULT值。如果输入的日期数据忽略时间部分,Oracle会将时、分、秒部分都置为0,也就是说会取整到日。同样,忽略了DD参数,Oracle会采用1作为日的默认值,也就是说会取整到月。但是,不要被这种“惯性”所迷惑,如果忽略MM参数,Oracle并不会取整到年,取整到当前月。注意:1.在使用Oracle的to_date函数来做日期转换时,可能会直觉地采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。如:select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from dual;
    原因是SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;
                       2.另要以24小时的形式显示出来要用HH24
    select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;//mi是分钟
    select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;//mm会显示月份
      

  2.   

    可以用DATE 也可以用varchar2(10)来处理!