mysql创建时间和更新时间
时间: 2025-04-16 17:05:29 浏览: 48
### MySQL 创建时间和更新时间
在 MySQL 中设置创建时间和更新时间为自动维护,可以通过定义 `timestamp` 或者 `datetime` 类型的字段来实现。对于这些字段,可以指定默认值为当前时间戳 (`CURRENT_TIMESTAMP`) 并允许其在记录被修改时自动更新。
#### 定义创建时间和更新时间字段
为了确保每次插入新纪录时自动生成创建时间,并且每当该行的数据发生变化时自动更新最后更改的时间,可以在建表语句中这样声明这两个列:
```sql
CREATE TABLE example_table (
id INT(11) NOT NULL AUTO_INCREMENT,
data VARCHAR(255),
c_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
u_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (id)
);
```
上述 SQL 语句中的 `c_time` 字段会在每条记录首次写入数据库时自动填充为当时的系统时间;而 `u_time` 则不仅会初始化为创建时刻的时间,在之后任何一次对该行数据的操作都会触发它再次同步到最新的系统时间[^1]。
此外,也可以采用另一种方式使用 `DATETIME` 数据类型配合相同的属性来进行相同的功能配置:
```sql
CREATE TABLE another_example (
order_id INT PRIMARY KEY AUTO_INCREMENT,
user_id VARCHAR(10) NOT NULL,
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
modify_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最近修改时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
这里展示了两种不同的命名约定以及注释风格,但核心逻辑保持一致——即利用 `DEFAULT CURRENT_TIMESTAMP` 和 `ON UPDATE CURRENT_TIMESTAMP` 来简化开发工作并提高应用的一致性和可靠性[^3]。
阅读全文
相关推荐



















