如何在表中添加"created at"列以设置 MySQL 中的时间戳?
mysqlmysqli database
您需要使用 ALTER 命令将创建的列添加到 MySQL 中已创建的表中。
我们首先创建一个表。创建表的查询如下。这是没有 “created at” 列的表。
mysql> create table formDemo - > ( - > Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, - > Email varchar(128), - > PhoneNumber varchar(15), - > Country varchar(30), - > Platform varchar(40) - > ); Query OK, 0 rows affected (0.53 sec)
现在实现上述语法以添加类型为时间戳且默认值为 CURRENT_TIMESTAMP 的 “created at” 列。
注意 - 请记住,如果您在创建时间之间留有空格,则需要使用反引号符号。
以下是为上表添加 “created at” 列的查询。“created_at” 列是一个 TIMESTAMP 列,其默认值设置为 CURRENT_TIMESTAMP,如下面的查询所示
mysql> alter table formDemo - > add column `created at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP; Query OK, 0 rows affected (0.42 sec) Records: 0 Duplicates: 0 Warnings: 0
现在借助 DESC 命令再次检查表的描述。
查询如下
mysql> DESC formDemo;
以下是显示 MySQL 中 “created at” 列的输出
+-------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+--------------+------+-----+-------------------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | Email | varchar(128) | YES | | NULL | | | PhoneNumber | varchar(15) | YES | | NULL | | | Country | varchar(30) | YES | | NULL | | | Platform | varchar(40) | YES | | NULL | | | created at | timestamp | NO | | CURRENT_TIMESTAMP | | +-------------+--------------+------+-----+-------------------+----------------+ 6 rows in set (0.01 sec)
看上面的示例输出,“created at” 列已成功添加。