1、MySQL的五种日期和时间类型
MySQl中有多种表示日期和时间的数据类型。其中YEAR表示年份,DATE表示日期,TIME表示时间,DATETIME和TIMESTAMP表示日期和时间。它们的对比如下:
YEAR ,字节数为1,取值范围为“1901——2155”
DATE,字节数为4,取值范围为“1000-01-01——9999-12-31”
TIME,字节数为3,取值范围为“-838:59:59——838:59:59”
DATETIME,字节数为8,取值范围为“1000-01-01 00:00:00——9999-12-31 23:59:59”
TIMESTAMP,字节数为4,取值范围为“19700101080001——20380119111407”
当插入值超出有效取值范围时,系统会报错,并将零值插入到数据库中。
使用datetime,然后java中使用string即可
students.setCreateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
时间:
创建时间:
插入时间是时候使用:
更新时间的字段可以不用插入,更新的时候也不用动这个字段。
编辑时间的字段可以用string类型。
示例:
比如优惠券的开始时间和结束时间可以用【datetime】类型,对应JAVA为【Date】类型,与上面用【String】类型一样。
向数据库添加时间数据就可以使用【
updateOrderFareDto.setPayTime(new Date());
】方法。
然后在mapper中进行与当前时间判断: 比如结束时间要小于当前时间
(now() <= c.use_end_time) 或者使用【<=】符号都可以。
DATE_FORMAT(updated_at,'%Y-%m-%d %H:%i:%s') as updated_at
'DXO' AS `service_type`,
'' AS avatar_img_url,
CASE so.order_result
WHEN '0' THEN
'待支付'
WHEN '2' THEN
'已取消'
WHEN '1' THEN
'已完成'
END AS `order_msg`,
so.cust_deleted