MySQL 如何在MySQL中的表中添加一个“创建于”列来设置时间戳?

MySQL 如何在MySQL中的表中添加一个“创建于”列来设置时间戳?

在MySQL中,我们经常会用到时间戳来记录数据的创建或更新时间。为了方便,我们可以在表的结构中添加一个“创建于”列来记录数据的创建时间。本文将介绍如何在MySQL中添加一个“创建于”列来设置时间戳。

阅读更多:MySQL 教程

准备工作

在进行操作之前,我们需要先了解一些基本知识:

  • MySQL的版本:MySQL 5.6及以上版本支持添加时间戳列。
  • TIMESTAMP类型:用于存储日期和时间的值,具有自动更新的功能。

添加“创建于”列

1. 创建表

首先,我们需要创建一个包含“创建于”列的表。以下是创建一个名为“users”的表,并添加“创建于”列的示例代码:

CREATE TABLE users (
  id INT(11) NOT NULL AUTO_INCREMENT,
  name VARCHAR(100) NOT NULL,
  email VARCHAR(100) NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

在上面的代码中,我们创建了一个名为“users”的表,其中包含“id”、“name”、“email”和“created_at”列,其中“created_at”列使用了TIMESTAMP类型,并设置了默认值为当前时间(CURRENT_TIMESTAMP)。

2. 插入数据

然后,我们可以向表中插入数据来测试“创建于”列是否正常工作。以下是向“users”表中插入一条数据的示例代码:

INSERT INTO users (name, email) VALUES ('John', 'john@example.com');

3. 查看数据

最后,我们可以使用SELECT语句查询数据并查看“创建于”列是否正常工作。以下是查询“users”表中所有数据的示例代码:

SELECT * FROM users;

查询结果可能会类似于以下内容:

+----+------+------------------+---------------------+
| id | name | email            | created_at          |
+----+------+------------------+---------------------+
|  1 | John | john@example.com | 2022-01-01 12:00:00 |
+----+------+------------------+---------------------+

可以看到,“created_at”列已经成功自动记录了数据的创建时间。

修改“创建于”列

如果我们想要修改“创建于”列的默认值,可以使用ALTER TABLE语句来修改列的属性。以下是修改“created_at”列默认值为“2019-01-01 00:00:00”的示例代码:

ALTER TABLE users MODIFY created_at TIMESTAMP DEFAULT '2019-01-01 00:00:00';

在上面的代码中,我们使用ALTER TABLE语句来修改“users”表中“created_at”列的属性,将其默认值修改为“2019-01-01 00:00:00”。

结论

通过本文,我们了解了如何在MySQL中的表中添加一个“创建于”列来设置时间戳,并对默认值进行修改。在实际开发过程中,我们可以根据具体需求来设置时间戳列,以便更好地管理数据。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程