欢迎来到天天文库
浏览记录
ID:22371717
大小:60.00 KB
页数:8页
时间:2018-10-28
《mysql数据库中的date,datetime和timestamp类型》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、MySQL数据库中的Date,DateTime和TimeStamp类型>>教育资源库 DATETIME,DATE和TIMESTAMP类型是相关的。本文描述他们的特征,他们是如何类似的而又不同的。 DATETIME类型用在你需要同时包含日期和时间信息的值时。MySQL检索并且以'YYYY-MM-DDHH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-0100:00:00'到'9999-12-3123:59:59'。(支持意味着尽管更早的值可能工作,但不能保证他们可以。) DATE类型用在你仅需
2、要日期值时,没有时间部分。MySQL检索并且以'YYYY-MM-DD'格式显示DATE值,支持的范围是'1000-01-01'到'9999-12-31'。 TIMESTAMP列类型提供一种类型,你可以使用它自动地用当前的日期和时间标记INSERT或UPDATE的操作。如果你有多个TIMESTAMP列,只有第一个自动更新。 自动更新第一个TIMESTAMP列在下列任何条件下发生: 列没有明确地在一个INSERT或LOADDATAINFILE语句中指定。 列没有明确地在一个UPDATE语句中指定且一些另外的列改变值。
3、(注意一个UPDATE设置一个列为它已经有的值,这将不引起TIMESTAMP列被更新,因为如果你设置一个列为它当前的值,MySQL为了效率而忽略更改。) 你明确地设定TIMESTAMP列为NULL. 除第一个以外的TIMESTAMP列也可以设置到当前的日期和时间,只要将列设为NULL,或NOESTAMP列为不同于当前日期和时间的值,即使对第一个TIMESTAMP列也是这样。例如,如果,当你创建一个行时,你想要一个TIMESTAMP被设置到当前的日期和时间,但在以后无论何时行被更新时都不改变,你可以使用这个属性: 让MySQL在行被创建时设置列,这将初始化它为当前
4、的日期和时间。 当你执行随后的对该行中其他列的更改时,明确设定TIMESTAMP列为它的当前值。 另一方面,你可能发现,当行被创建并且远离随后的更改时,很容易用一个你用NOE列。 TIMESTAMP值可以从1970的某时的开始一直到2037年,精度为一秒,其值作为数字显示。 在MySQL检索并且显示TIMESTAMP值取决于显示尺寸的格式如下表。完整TIMESTAMP格式是14位,但是TIMESTAMP列可以用更短的显示尺寸创造:列类型 显示格式TIMESTAMP(14)YYYYMMDDHHMMSSTIMESTAMP(12)YYMMDDHHMMSSTIM
5、ESTAMP(10)YYMMDDHHMMTIMESTAMP(8)YYYYMMDDTIMESTAMP(6)YYMMDDTIMESTAMP(4)YYMMTIMESTAMP(2)YY 所有的TIMESTAMP列都有同样的存储大小,不考虑显示尺寸。最常见的显示尺寸是6、8、12、和14。你可以在表创建时间指定一个任意的显示尺寸,但是值0或比14大被强制到14。在从1~13范围的奇数值尺寸被强制为下一个更大的偶数。 使用一个常用的格式集的任何一个,你可以指定DATETIME、DATE和TIMESTAMP值: 'YYYY-MM-DDHH:MM:SS'或
6、9;YY-MM-DDHH:MM:SS'格式的一个字符串。允许一种宽松的语法--任何标点可用作在日期部分和时间部分之间的分隔符。例如,'98-12-3111:30:45'、'98.12.3111+30+45'、'98/12/3111*30*45'和'98123111-'是等价的。 'YYYY-MM-DD'或'YY-MM-DD'格式的一个字符串。允许一种宽松的语法。例如,'98-12-31','98.12.31','98/12
7、/31'和'981231'是等价的。 'YYYYMMDDHHMMSS'或'YYMMDDHHMMSS'格式的没有任何分隔符的一个字符串,例如,'19970523091528'和'970523091528'被解释为'1997-05-2309:15:28',但是'971122459015'是不合法的(它有毫无意义的分钟部分)且变成'0000-00-0000:00:00'。 'YYYYMMDD'或'
此文档下载收益归作者所有