怎么将MYSQL字段设置成默认当前时间戳

怎么将MYSQL字段设置成默认当前时间戳,第1张

如果是日期字符串类型就是~

CREATE TABLE 表名

(

time datetime NOT NULL DEFAULT NOW(),

...

)

如果是时间戳~

CREATE TABLE 表名

(

time int NOT NULL DEFAULT CURRENT_TIMESTAMP(),

...

)

-----希望对你有帮助~

如果是插入的时候的话~在对应值上填写NOW()/CURRENT_TIMESTAMP() 也是可以的

--

方法一:

由于MySQL目前

字段

默认值

不支持

函数

,所以以create_time

datetime

default

now()

的形式设置默认值是不可能的。代替的

方案

是使用TIMESTAMP类型代替DATETIME类型。

TIMESTAMP列类型自动地用当前的

日期

和时间

标记

INSERT或UPDATE的 *** 作。如果有多个TIMESTAMP列,只有第一个自动更新。

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

1.列值没有明确地在一个INSERT或LOAD

DATA

INFILE语句中指定。

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

3.你明确地设定TIMESTAMP列为NULL.

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

所以把日期类型

选择成timestamp

允许空就可以了

CREATE

TABLE

test

(

uname

varchar(50)

NOT

NULL,

updatetime

timestamp

NULL

DEFAULTCURRENT_TIMESTAMP

ON

UPDATE

CURRENT_TIMESTAMP

)

ENGINE=InnoDB

DEFAULT

CHARSET=utf8

如果要在navicat下 *** 作的话,将字段设置为timestamp,然后默认值写上CURRENT_TIMESTAMP即可


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11797590.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存