栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

是否将NOW()设置为日期时间数据类型的默认值?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

是否将NOW()设置为日期时间数据类型的默认值?

从MySQL 5.6.5开始,您可以将

DATETIME
类型与动态默认值一起使用:

CREATE TABLE foo (    creation_time      DATETIME DEFAULT   CURRENT_TIMESTAMP,    modification_time  DATETIME ON UPDATE CURRENT_TIMESTAMP)

甚至结合两个规则:

modification_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

参考:
http :
//dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html


http://optimize-this.blogspot.com/2012/04/datetime-default-now-finally-
available .html

在5.6.5之前,您需要使用

TIMESTAMP
数据类型,只要修改记录,该数据类型就会自动更新。但是,不幸的是,
TIMESTAMP
每个表只能存在一个自动更新的字段。

CREATE TABLE mytable (  mydate TIMESTAMP)

参见:http :
//dev.mysql.com/doc/refman/5.1/en/create-
table.html

如果要防止MySQL将timestamp值更新为on

UPDATE
(以便仅在上触发
INSERT
),则可以将定义更改为:

CREATE TABLE mytable (  mydate TIMESTAMP DEFAULT CURRENT_TIMESTAMP)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390634.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号