`

Mysql 如何设置字段自动获取当前时间

 
阅读更多
原文地址:http://www.cnblogs.com/lhj588/p/4245719.html




应用场景:



1、在数据表中,要记录每条数据是什么时候创建的,不需要应用程序去特意记录,而由数据数据库获取当前时间自动记录创建时间;

2、在数据库中,要记录每条数据是什么时候修改的,不需要应用程序去特意记录,而由数据数据库获取当前时间自动记录修改时间;



实现方式:



1、将字段类型设为  TIMESTAMP

2、将默认值设为  CURRENT_TIMESTAMP



举例应用:



1、MySQL 脚本实现用例

--添加CreateTime 设置默认时间 CURRENT_TIMESTAMP

ALTER TABLE `table_name`
ADD COLUMN  `CreateTime` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;



--修改CreateTime 设置默认时间 CURRENT_TIMESTAMP
ALTER TABLE `table_name`
MODIFY COLUMN  `CreateTime` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间' ;



--添加UpdateTime 设置 默认时间 CURRENT_TIMESTAMP   设置更新时间为 ON UPDATE CURRENT_TIMESTAMP
ALTER TABLE `table_name`
ADD COLUMN `UpdateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间' ;



--修改 UpdateTime 设置 默认时间 CURRENT_TIMESTAMP   设置更新时间为 ON UPDATE CURRENT_TIMESTAMP

ALTER TABLE `table_name`
MODIFY COLUMN `UpdateTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间' ;

2、MySQL工具设置









总结:



1、MySQL自动管理,保持和数据库时间一致性;

2、简单高效,不需要应用程序开发支持,MySQL自动完成;
分享到:
评论

相关推荐

    在mysql建表中将日期设置为默认取得当前系统时间

    `REGISTRATION_TIME`和`LAST_LOGIN_TIME`字段被定义为`TIMESTAMP`类型,并分别设置了默认值为`CURRENT_TIMESTAMP`,这意味着每当有新记录插入时,如果没有显式提供时间,则这两个字段将自动获取当前系统时间。...

    mysql自增字段重排 mysql删除表后自增字段从1开始.pdf

    在MySQL数据库中,自增字段(AUTO_INCREMENT)是一种常见的特性,用于在插入新记录时自动为该字段生成唯一的序列编号。这个字段通常用于主键,确保每个记录的唯一性。以下是对MySQL自增字段相关知识点的详细说明: ...

    MySQL如何为字段添加默认时间浅析

    在这个例子中,`create_time`字段会在插入新记录时自动获取当前时间,而`update_time`字段不仅在插入时记录时间,当记录更新时也会自动更新为当前时间。 2. **为已有表添加字段**:如果表已经存在,可以使用ALTER ...

    mysql自增字段重排 mysql删除表后自增字段从1开始.docx

    MySQL的`LAST_INSERT_ID()`函数可以获取自增字段生成的最后一个编号,这对于跟踪插入操作非常有用。但是,这个函数只与当前会话相关,如果在会话中没有生成新的自增值,它将返回0。 对于其他类型的数据表,如MyISAM...

    mysql的插入问题 怎么获得自动增长的ID

    在MySQL中,通过设置字段为`AUTO_INCREMENT`属性来实现自动增长的ID。当向表中插入新记录时,如果该记录的ID字段未指定值,则系统会自动分配一个唯一的递增ID。 - **MyISAM与InnoDB的区别**: - **MyISAM**:使用...

    hibernate实体映射文件字段设置默认值

    因此,在插入或更新记录时,如果该字段没有被显式设置,那么它的值将自动设置为当前的系统日期和时间。 #### 控制字段是否参与插入/更新操作 在映射文件中,可以通过设置`insert`和`update`属性来控制字段是否参与...

    mysql 设置自动创建时间及修改时间的方法示例

    在这个例子中,`create_time`字段会在数据插入时自动获取当前时间,而`update_time`字段不仅在插入时设置为当前时间,还会在数据被更新时自动更新为最新时间。 ### 2. 直接通过工具修改表设计 许多MySQL管理工具...

    MySQL表字段设置默认值(图文教程及注意细节)

    在MySQL中,设置表字段的默认值是一项基本操作,它允许在插入新记录时,如果没有为该字段提供值,系统会自动使用预设的默认值。本教程将深入讲解如何设置不同类型的字段默认值,以及在操作过程中需要注意的细节。 ...

    sqlserver中日期型字段设默认值

    当在表定义中设置字段的默认值时,可以使用`GETDATE()`来确保该字段总是被填充为创建记录时的当前时间。例如,创建一个包含日期字段的表,并设置其默认值为`GETDATE()`: ```sql CREATE TABLE Orders ( OrderID ...

    mysql中datetime类型设置默认值方法

    这条SQL语句将`ts_role`表的`create_tm`字段修改为默认值`CURRENT_TIMESTAMP`,确保在插入新记录时自动获取当前时间。 总结一下,在MySQL中为datetime类型设置默认值的方法主要有两种:一是创建表时在建表语句中...

    MySql数据库自动递增值问题

    可以使用`LAST_INSERT_ID()`函数获取自增列自动生成的最新编号,但这个值仅与当前会话相关,如果在会话中没有生成新的自增值,函数将返回0。 6. 调整自增值: - 可以通过`ALTER TABLE`命令改变表的自增初始值,...

    MySQL日期数据类型、MySQL时间类型使用总结.docx

    timestamp的一个独特特点是,当插入或更新记录时,如果没有显式提供值,该字段将自动填充或更新为当前时间(CURRENT_TIMESTAMP)。这在某些场景下可以简化编程,但可能引发并发问题。 3. **date**:占用3字节存储...

    Mysql C/C++API

    - `mysql_autocommit()`:设置自动提交模式。 - `mysql_commit()`:提交当前事务。 - `mysql_rollback()`:回滚当前事务。 7. **游标支持**: - MySQL C API也支持游标,通过设置`MYSQL_OPT_CURSOR_TYPE`选项...

    MySQL-Front 安装包+注册码

    总之,MySQL-Front作为一个强大的MySQL客户端工具,为数据库管理和开发提供了便捷的图形界面,结合"MySQL-Front_Setup.exe"安装包和"MySQL-Front注册码.txt",用户可以获得完整的安装和激活体验,从而高效地进行...

    SQL | 创建时间,更新时间,使用默认值自动设置|data-412945.pdf

    通过`ALTER TABLE`语句,我们可以向现有表添加一个新字段`create_time`,并将其默认值设置为`CURRENT_TIMESTAMP`,表示插入数据时的当前时间。例如: ```sql ALTER TABLE 表名 ADD ( `create_time` TIMESTAMP ...

    mysql雪花算法生成唯一整型ID主键的实现方法

    接着,我们创建三个自定义函数,用于获取当前值(currval)、获取下一个值(nextval)和设置当前值(setval)。这些函数使得我们可以像操作序列一样操作这个`sequence`表: ```sql DELIMITER / CREATE FUNCTION ...

    sql获得自动增加字段的下一个编号,不是max(id)+1

    可以创建一个序列并将其与表关联起来,这样每次插入新记录时都会自动获取序列中的下一个值。 ```sql CREATE SEQUENCE seq_TableXXX; ALTER TABLE TableXXX ALTER COLUMN id SET DEFAULT NEXTVAL('seq_TableXXX'); ...

    在php MYSQL中插入当前时间

    // 获取当前时间并格式化 $mysql_query = "INSERT INTO tablename (fieldname) VALUES ('$current_time')"; ``` 在这个例子中,PHP的 date() 函数生成的字符串可以直接用于MySQL的插入操作。 总结,MySQL 提供...

    mysql-8.0.26-macos11-x86_64.dmg

    - 定期更新MySQL到最新版本,以获取安全补丁和性能提升。 - 确保数据库服务器防火墙设置正确,限制不必要的外部访问。 - 使用强密码策略并定期更换用户密码。 - 对敏感数据进行加密存储,启用SSL连接以保证传输...

Global site tag (gtag.js) - Google Analytics