mysql 在数据库中设置时间

mysql 在数据库中设置时间,第1张

1、非要用datetime的话就不能用default而要通过trigger来实现

2、在插入时value用now()函数、或者自行取运行时间

3、字段类型改变为:

datecreated timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,

datemodified timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

但是其实不可行,因为一个表只能有一个CURRENT_TIMESTAMP,但你有三个字段。

所以当有多个时间可能还是得结合方式2与方式3来综合处理。当然全都用方式2也就不会提出这种问题了。

DATE_ADD() 函数向日期添加指定的时间间隔

DATE_SUB() 函数向日期减少指定的时间间隔。

DATE_ADD(date,INTERVAL expr type)

DATE_SUB(date,INTERVAL expr type)

date 参数是合法的日期表达式。

expr 参数是您希望添加的时间间隔。

type 参数可以是下列值:

例:更新某个时间,每个时间加上一个星期

例子:更新某个时间,使每个时间减少一个月

mysql>create table timetest(

->id int not null,

->modtime timestamp default current_timestamp on update current_timestamp,

->primary key(id)

->)engine=innodb,default charset=utf8

Query OK, 0 rows affected (0.06 sec)

以下是测试,包括建表时记录时间,插入时记录时间,更新时记录时间:

mysql>insert into timetest(id) values (1),(2),(3)

Query OK, 3 rows affected (0.06 sec)

Records: 3 Duplicates: 0 Warnings: 0

mysql>select * from timetest

+----+---------------------+

| id | modtime |

+----+---------------------+

| 1 | 2011-09-21 09:56:24 |

| 2 | 2011-09-21 09:56:24 |

| 3 | 2011-09-21 09:56:24 |

+----+---------------------+

3 rows in set (0.00 sec)

mysql>update timetest set id=10 where id=1

Query OK, 1 row affected (0.06 sec)

Rows matched: 1 Changed: 1 Warnings: 0

mysql>select * from timetest

+----+---------------------+

| id | modtime |

+----+---------------------+

| 2 | 2011-09-21 09:56:24 |

| 3 | 2011-09-21 09:56:24 |

| 10 | 2011-09-21 09:57:15 |

+----+---------------------+

3 rows in set (0.00 sec)

mysql>update timetest set id=4 where id=3

Query OK, 1 row affected (0.05 sec)

Rows matched: 1 Changed: 1 Warnings: 0

mysql>select * from timetest

+----+---------------------+

| id | modtime |

+----+---------------------+

| 2 | 2011-09-21 09:56:24 |

| 4 | 2011-09-21 09:58:10 |

| 10 | 2011-09-21 09:57:15 |

+----+---------------------+

3 rows in set (0.00 sec)

mysql>


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存