MySQL数据类型 YEAR和TIME

来源:互联网 发布:数据之魅 网盘 编辑:程序博客网 时间:2024/05/29 17:04
YEAR类型占用1字节,并且在定义时可以指定显示的宽度为YEAR(4)或YEAR(2),例如:
mysql> CREATE TABLE t ( a YEAR(2));
Query OK, 0 rows affected (0.05 sec)

mysql> INSERT INTO t SELECT '1990';

mysql> SELECT * FROM t;
+------+
| a    |
+------+
|   90 |
+------+
1 row in set (0.00 sec)

对于YEAR(4),其显示年份的范围为1901~2155;对于YEAR(2),其显示年份的范围为1970~2070。
在YEAR(2)的设置下,00~69代表2000~2069年。

TIME类型占用3字节,显示的范围为“-838:59:59”~“838:59:59”。有人会奇怪为什么TIME类型的时间可以大于23。
因为TIME类型不仅可以用来保存一天中的时间,也可以用来保存时间间隔,同时这也解释了为什么TIME类型也可以存在负值。
和DATETIME类型一样,TIME类型同样可以显示微秒时间,但是在插入时,数据库同样会进行截断操作,例如:
mysql> CREATE TABLE t ( a TIME );
Query OK, 0 rows affected (0.04 sec)

mysql> INSERT INTO t SELECT '14:40:20.123456';
Query OK, 1 row affected (0.00 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> SELECT * FROM t;
+----------+
| a        |
+----------+
| 14:40:20 |
+----------+

1 row in set (0.00 sec)


原文链接:http://book.2cto.com/201211/8303.html




1 0
原创粉丝点击