• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL创建一个默认值为当前时间的字段

MySql 海叔叔 1个月前 (05-25) 19次浏览 已收录 0个评论

关键词
MySQL 字段 当前时间

摘要

本文介绍在MySQL创建表时,如何创建一个默认值为当前时间的时间类型的时段。

先抛出一个问题:如果我们创建一个文章中,表中有一个字段表示文章的发布时间,这个时间有一个默认值,这个值就是插入这条记录的时间。如何实现呢?

其实在创建数据库表时,我们经常需要创建类似的字段。现在我们来分析一下如何创建这个字段。
1、MySQL中有一个时间函数now(),它表示当前时间。
2、MySQL创建字段或修改字段时,可以使用default这个关键词来表示默认值。

好了,有了以上两点基础,我们就可以创建一个默认值为当前时间的字段了。

mysql> create table test(
-> test_info varchar(20),
-> test_time datetime not null default now()
-> );
Query OK, 0 rows affected (0.09 sec)

执行成功,我们看看表结构:
mysql> describe test;
+———–+————-+——+—–+——————-+——-+
| Field | Type | Null | Key | Default | Extra |
+———–+————-+——+—–+——————-+——-+
| test_info | varchar(20) | YES | | NULL | |
| test_time | datetime | NO | | CURRENT_TIMESTAMP | |
+———–+————-+——+—–+——————-+——-+
2 rows in set (0.03 sec)

表结构也没有问题,我们尝试插入两条数据看看:
mysql> insert into test(test_info) values(‘hi’);
Query OK, 1 row affected (0.34 sec)

mysql> insert into test(test_info) values(‘hello’);
Query OK, 1 row affected (0.03 sec)

mysql> select * from test;
+———–+———————+
| test_info | test_time |
+———–+———————+
| hi | 2013-10-10 14:41:26 |
| hello | 2013-10-10 14:41:31 |
+———–+———————+
2 rows in set (0.02 sec)

从最终的结果来看,Perfect!test_time字段,我们根本就没有插入值,系统为它自动生成了一个当时时间,这就是我们要的结果。

关于MySQL创建一个默认值为当前时间的字段,本文就介绍这么多,希望对大家有所帮助,谢谢!


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址