DATE only stores a date
TIME only stores a time of day
DATETIME stores both.
difference between DATETIME and TIMESTAMP:
1. DATETIME is formatted as YYYY-MM-DD HH:MM:SS
2. DATETIME Valid ranges go from the year 1000 to the year 9999
3. DATETIME stores every digit in the year, month day, hour, minute and second, it uses up a total of 8 bytes.
Timestamp:
1. TIMESTAMP only stores the number of seconds since 1970-01-01, it uses 4 bytes
2. valid range goes from 1970 to 2038.
In rails:
Both :timestamp and :datetime will default to DATETIME