对于时间戳,MySQL中使用哪种数据类型?
TIMESTAMP数据类型用于包含日期和时间部分的值。让我们首先创建一个表-
mysql> create table DemoTable662( UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,UserName varchar(100),UserPostDate datetime );
以下是有效的默认时间戳值的查询-
mysql> alter table DemoTable662 MODIFY COLUMN UserPostDate TIMESTAMP NOT NULL DEFAULT current_timestamp; Records: 0 Duplicates: 0 Warnings: 0
让我们再次检查表的描述-
mysql> desc DemoTable662;
这将产生以下输出-
+--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | UserId | int(11) | NO | PRI | NULL | auto_increment | | UserName | varchar(100) | YES | | NULL | | | UserPostDate | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+ 3 rows in set (0.10 sec)
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable662(UserName) values('Chris'); mysql> insert into DemoTable662(UserName) values('Robert'); mysql> insert into DemoTable662(UserName,UserPostDate) values('Robert','2018-01-11');
使用select语句显示表中的所有记录-
mysql> select *from DemoTable662;
这将产生以下输出-
+--------+----------+---------------------+ | UserId | UserName | UserPostDate | +--------+----------+---------------------+ | 1 | Chris | 2019-07-20 13:06:13 | | 2 | Robert | 2019-07-20 13:06:18 | | 3 | Robert | 2018-01-11 00:00:00 | +--------+----------+---------------------+ 3 rows in set (0.00 sec)