数据库中的Date,DateTime和TimeStamp类型.docx

数据库中的Date,DateTime和TimeStamp类型.docx

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

数据库中的Date,DateTime和TimeStamp类

DATETIME,DATE和TIMESTAMP类型是相关的。本文描述他们的特征,他们是如何类似的而又不同的。

DATETIME类型用在你需要同时包含日期和时间信息的值时。MySQL检索并且以'YYYY-MM-DD

HH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-0100:00:00'『9999-12-31

23:59:59'。('、支持”意味着尽管更早的值可能工作,但不能保证他们可以。)

DATE类型用在你仅需要日期值时,没有时间部分。MySQL检索并且以'YYYY-MM-DD'格式显示

DATE值,支持的范围是'1000-01-01'到'9999-12-31'。

TIMESTAMP列类型提供一种类型,你可以使用它自动地用当前的日期和时间标记INSERT或

UPDATE的操作。如果你有多个TIMESTAMP列,只有第一个自动更新。

自动更新第一个TIMESTAMP列在下列任何条件下发生:

列没有明确地在一个INSERT或LOADDATAINFILE语句中指定。

列没有明确地在一个UPDATE语句中指定且一些另外的列改变值。(注意一个UPDATE设置一个列为它已经有的值,这将不引起TIMESTAMP列被更新,因为如果你设置一个列为它当前的值,MySQL为了效率而忽略更改。)

你明确地设定TIMESTAMP列为NULL.

除第一个以外的TIMESTAMP列也可以设置到当前的日期和时间,只要将列设为NULL,或NOW()。

通过明确地设置希望的值,你可以设置任何TIMESTAMP列为不同于当前日期和时间的值,即使对第一个TIMESTAMP列也是这样。例如,如果,当你创建一个行时,你想要一个TIMESTAMP被设置到当前的日期和时间,但在以后无论何时行被更新时都不改变,你可以使用这个属性:

让MySQL在行被创建时设置列,这将初始化它为当前的日期和时间。

当你执行随后的对该行中其他列的更改时,明确设定TIMESTAMP列为它的当前值。

另一方面,你可能发现,当行被创建并且远离随后的更改时,很容易用一个你用NOW()初始化的

DATETIME歹。。

TIMESTAMP值可以从1970的某时的开始一直到2037年,精度为一秒,其值作为数字显示。

在MySQL检索并且显示TIMESTAMP值取决于显示尺寸的格式如下表。''完整''TIMESTAMP格式

是14位,但是TIMESTAMP列可以用更短的显示尺寸创造:

列类型 显示格式

TIMESTAMP(14)YYYYMMDDHHMMSS

TIMESTAMP(12)YYMMDDHHMMSS

TIMESTAMP(10)YYMMDDHHMM

TIMESTAMP(8)YYYYMMDD

TIMESTAMP(6)YYMMDD

TIMESTAMP(4)YYMM

TIMESTAMP(2)YY

所有的TIMESTAMP列都有同样的存储大小,不考虑显示尺寸。最常见的显示尺寸是6、8、12、和14。你可以在表创建时间指定一个任意的显示尺寸,但是值0或比14大被强制到14。在从1?13范围的奇数值尺寸被强制为下一个更大的偶数。

使用一个常用的格式集的任何一个,你可以指定DATETIME、DATE和TIMESTAMP值:

'YYYY-MM-DDHH:MM:SS'或'YY-MM-DDHH:MM:SS'格式的一个字符串。允许一种''宽松”的语法--任何标点可用作在日期部分和时间部分之间的分隔符。例如,'98-12-3111:30:45'、'98.12.3111+30+45'、'98/12/3111*30*45'和'98@12@3111^30^45'是等价的。

'YYYY-MM-DD'或'YY-MM-DD'格式的一个字符串。允许一种''宽松”的语法。例如,'98-12-31','98.12.31','98/12/31'和'98@12@31'是等价的。

'YYYYMMDDHHMMSS'或'YYMMDDHHMMSS'格式的没有任何分隔符的一个字符串,例如,'19970523091528'和'970523091528'被解释为'1997-05-2309:15:28',但是'971122459015'是不合法的(它有毫无意义的分钟部分)且变成'0000-00-0000:00:00'。

'YYYYMMDD'或'YYMMDD'格式的没有任何分隔符的一个字符串,如果字符串认为是一个日期。例如,和'970523'被解释作为'1997-05-23',但是'971332'是不合法的(它有无意义的月和天部分)且变成'0000-00-00'。

YYYYMM

文档评论(0)

dajiefude2 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档