zno2

日期时间(一)

sql

SELECT TO_CHAR(SYSTIMESTAMP, 'yyyy-MM-dd HH24:mi:ss.FF9') FROM DUAL;
SELECT TO_CHAR(SYSDATE, 'yyyy-MM-dd HH24:mi:ss') FROM DUAL;
SELECT TO_TIMESTAMP('2014-01-01 17:20:00.178', 'yyyy-MM-dd HH24:mi:ss.ff9') FROM DUAL;
SELECT TO_DATE('2014-01-01 17:20:00.178', 'yyyy-MM-dd HH24:mi:ss.ff9') FROM DUAL; --ORA-01821 日期格式无法识别
SELECT TO_DATE('2014-01-01 17:20:00.178', 'yyyy-MM-dd HH24:mi:ss') FROM DUAL; --ORA-01830 日期格式图片在转换整个输入字符串之前结束
SELECT TO_DATE('2014-01-01 17:20:00', 'yyyy-MM-dd HH24:mi:ss') FROM DUAL;

sql2

INSERT INTO zxg VALUES (to_date('2015-5-18 00:00:00','yyyy-mm-dd hh24:mi:ss')) --18-5月 -15 12.00.00.000000 上午
INSERT INTO zxg VALUES (to_date('2015-5-18 11:59:59','yyyy-mm-dd hh24:mi:ss')) --18-5月 -15 11.59.59.000000 上午

INSERT INTO zxg VALUES (to_date('2015-5-18 12:00:00','yyyy-mm-dd hh24:mi:ss')) --18-5月 -15 12.00.00.000000 下午
INSERT INTO zxg VALUES (to_date('2015-5-18 23:59:59','yyyy-mm-dd hh24:mi:ss')) --18-5月 -15 11.59.59.000000 下午
  • oracle 数据库中字段为DATE类型时,插入'2015-5-18 00:00:00' 显示2015-5-18
  • 将DATE类型数据改为TIMESTAMP时,'2015-5-18' 这种数据将显示为'18-5月 -15 12.00.00.000000 上午'

java

public static void main(String[] args) {

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        try {
            sdf.setLenient(true);
            Date d = sdf.parse("2014-01-02 17:20:00");
            System.out.println(d);
        } catch (ParseException e) {
            e.printStackTrace();
        }

        Calendar c = Calendar.getInstance();
        System.out.println(c.getTime());
        System.out.println(new Date());
        // Console:
        // Mon Aug 18 10:34:48 CST 2014
        // Mon Aug 18 10:34:48 CST 2014
        
        // true 宽容 false 不宽容 默认 宽容
        // c.set(2020, 12, 12, 8, 23, 31); 等价于 c.set(2021, 1, 12, 8, 23, 31);月份0-11
        // 会由低到高逐一进位
        // 设置为不宽容时,格式错误(合理的时间,比如有0点没有24点)会报异常 java.lang.IllegalArgumentException
        c.setLenient(true);
        c.set(2020, 1, 12, 24, 70, 31);
        System.out.println(c.getTime());

        // 01月 Jan January
        // 02月 Feb February
        // 03月 Mar March
        // 04月 Apr April
        // 05月 May May
        // 06月 Jun June
        // 07月 Jul July
        // 08月 Aug August
        // 09月 Sep September
        // 10月 Oct October
        // 11月 Nov November
        // 12月 Dec December

        // 星期一 Mon Monday
        // 星期二 Tue Tuesday
        // 星期三 Wen Wednesday
        // 星期四 Thu Thursday
        // 星期五 Fri Friday
        // 星期六 Sat Saturday
        // 星期日 Sun Sunday

    }
  •  oracle 不区分大小写
  •  java 区分大小写

 SimpleDateFormat 不支持并发推荐使用 joda-time 组件

posted on 2016-08-05 18:01  zno2  阅读(285)  评论(0编辑  收藏  举报

导航