在Java开发,MySql或Oracle中,DATE、TIME、DATETIME和TIMESTAMP类型之间有什么区别?

在Java开发,MySql或Oracle中,DATE、TIME、DATETIME和TIMESTAMP类型之间有什么区别?
问题相关代码
INSERT INTO table (timedate) VALUES (NOW())

INSERT INTO table (datetime) VALUES (NOW())
我的解答思路和尝试过的方法

from: https://stackoverflow.com/questions/31761047/what-difference-between-the-date-time-datetime-and-timestamp-types

DATE:日期 年-月-日
TIME:时间 时:分:秒
DATETIME:日期时间 年-月-日 时:分:秒
TIMESTAMP:时间毫秒值