MysqL中存储日和和时间,使用日期和时间类型。
提供的包括YEAR、DATE、TIME、DATETIME和TIMESTAMP。
YEAR
占用:1字节
取值范围:1901~2155
日期格式:YYYY——0000
DATE
占用:4字节
取值范文:1000-01-01~9999-12-3
日期格式:YYYY-MM-DD——0000-00-00
TIME
占用:3字节
取值范围:-838:59:59~838:59:59
日期格式:HH:MM:SS——00:00:00
DATATIME
占用:8字节
取值范围:1000-01-01 00:00:00~9999-12-31 23:59:59
日期格式:YYYY-MM-DD HH:MM:SS——0000-00-00 00:00:00
TIMESTAMP
占用:4字节
取值范围:1970-01-01 00:00:01~2038-01-19 03:14:07
日期格式:YYYY-MM-DD HH:MM:SS——0000-00-00 00:00:00
注意,如果插入的数值不合法,系统会自动将对应的零值,插入数据库中。
YEAR类型
用于表示年份,可以使用三种格式指定YEAR类型的值
1、使用4位字符串或数字表示
范围为’1901’~’2155’或者1901~2155
比如
输入’2015’或者2015,插入到数据库中的值均为2015
2、使用2位字符串表示
范围为’00’~’99’
其中
‘00’~’69’范围的值,被转换为2000~2069
‘70’~’99’范围的值,被转换为1970~1999
比如
输入’15’,插入到数据库中的值为2015
3、使用2位数字表示
范围为1~99
其中
1~69范围的值,被转换为2001~2069
70~99范围的值,被转换为2070~2099
比如
输入15,插入到数据库中的值为2015
注意
使用YEAR类型时,一定要区分’0’和0
字符串格式的’0’,表示的值为2000
数字格式的0,表示的值为0000
DATE类型
用于表示日期值,不包含时间部分
可以使用4种格式指定DATE类型的值
1、以’YYYY-MM-DD’或者’YYYYMMDD’字符串格式表示
比如
输入’2014-01-01’或者20140101,插入数据库中的日期都为2014-01-01
2、以’YY-MM-DD’或者’YYMMDD’字符串格式表示
YY表示的是年,范围为’00’~’99’
其中
‘00’~’69’范围的值,转换为2000~2069
‘70’~’99’范围的值,转换为1970~1999
比如
输入’14-01-01’或者’140101’,插入数据库中的日期都为2014-01-01
3、以YY-MM-DD或者YYMMDD数字格式表示
比如
输入14-01-01或者140101,插入数据库中的日期都为2014-01-01
4、使用CURRENT_DATE或者NOW()表示当前系统日期
TIME类型
用于表示时间值
显示形式为HH:MM:SS
可以使用三种格式指定TIME类型的值
1、以’D HH:MM:SS’字符串格式表示
其中
D表示日期,取值范围0~34之间,插入数据时
小时的值=D*24+HH
比如,输入’2 11:30:30’,插入到数据库中的时间为59:30:30
2、以’HHMMSS’字符串格式或者HHMMSS数字格式表示
比如
输入’345345’或者345345,插入到数据库的时间为34:53:45
3、使用CURRENT_TIME或NOW()插入当前系统时间
DATETIME类型
用于表示日期和时间
形式为’YYYY-MM-DD HH:MM:SS’
可以使用4种格式指定DATETIME类型的值
1、以’YYYY-MM-DD HH:MM:SS’或者’YYYYMMDDHHMMSS’字符串格式表示
取值范围为’1000-01-01 00:00:00’~’9999-12-3 23:59:59’
比如
输入’2014-01-22 09:01:23’ 或20140122090123,插入数据库中的值为2014-01-22 09:01:23
2、以’YY-MM-DD HH:MM:SS’或者’YYMMDDHHMMSS’字符串格式表示
其中
YY表示年份,取值范围为’00’~’99’
与DATE类型的YY相同
‘00’~’69’范围的值,转换为2000~2069
‘70’~’99’范围的值,转换为1970~1999
3、以YYYYMMDDHHMMSS或者YYMMDDHHMMSS数字格式表示
比如
插入20140122090123或者140122090123,插入数据库中的值为2104-01-22 09:01:23
4、使用NOW来输入当前系统的日期和时间
TIMESTAMP类型
用于表示日期和时间
显示形式与DATETIME相同,但是,取值范围比DATETIME小
注意
1、使用CURRENT_TIMESTAMP来输入系统当前日期和时间
2、输入NULL时,系统会输入系统当前日期和时间
3、无任何输入时,系统会输入系统当前日期和时间