Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >mysql:添加时间列自动更新时间(用于记录创建时间和修改时间)

mysql:添加时间列自动更新时间(用于记录创建时间和修改时间)

作者头像
鲲志说
发布于 2025-04-07 04:32:52
发布于 2025-04-07 04:32:52
27900
代码可运行
举报
运行总次数:0
代码可运行

通常我们在数据库建表时希望有创建时间和更新时间的列来进行记录,而在mysql中,timestamp数据类型是一个比较特殊的数据类型,它可以自动在你不使用程序更新情况下,插入或者修改记录会自动更新timestamp的值。

下面我们看一下使用方法:

1.只有对记录进行修改时才更新为当前时间,插入时不会:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ON UPDATE CURRENT_TIMESTAMP  

我的数据库中实际代码示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE `t_user`   //t_user是我的一个表名
ADD COLUMN `updateDate`  TIMESTAMP NULL ON UPDATE CURRENT_TIMESTAMP 
//上面这句话是在该表创建一个只对记录进行修改时才更新时间的updateDate列
AFTER `createDate`;
//将该列加在createDate列后

效果展现对比:

2. 在插入记录时,会添加当前时间,但在修改记录时,不会再更新当前时间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
DEFAULT CURRENT_TIMESTAMP 

我的数据库中实际代码示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE `t_user`
ADD COLUMN `createDate`  TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP 
AFTER `updateDate`;

效果展现对比:

3、 4两条由于我没有实际应用到项目中,所以没有在数据库操作,大家需要用到的话可以参考应用

3.在插入或者更新记录时,都会更新当前时间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 

4.如果default或on update 子句都不写,就等同于

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 default current_timestamp on update CURRENT_TIMESTAMP
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-04-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Node.js 是如何处理请求的
前言:在服务器软件中,如何处理请求是非常核心的问题。不管是底层架构的设计、IO 模型的选择,还是上层的处理都会影响一个服务器的性能,本文介绍 Node.js 在这方面的内容。
theanarkh
2023/10/04
5800
Node.js 是如何处理请求的
Nodejs cluster模块深入探究
由表及里 HTTP服务器用于响应来自客户端的请求,当客户端请求数逐渐增大时服务端的处理机制有多种,如tomcat的多线程、nginx的事件循环等。而对于node而言,由于其也采用事件循环和异步I/O机制,因此在高I/O并发的场景下性能非常好,但是由于单个node程序仅仅利用单核cpu,因此为了更好利用系统资源就需要fork多个node进程执行HTTP服务器逻辑,所以node内建模块提供了child_process和cluster模块。利用child_process模块,我们可以执行shell命令,可以
欲休
2018/03/15
2K0
通过Node.js的Cluster模块源码,深入PM2原理
众所周知,Node.js中的JavaScript代码执行在单线程中,非常脆弱,一旦出现了未捕获的异常,那么整个应用就会崩溃。
Peter谭金杰
2020/05/09
3.1K1
通过Node.js的Cluster模块源码,深入PM2原理
源码分析 Node 的 Cluster 模块
前段时间,公司的洋彬哥老哥遇到一个问题,大概就是本机有个node的http服务器,但是每次请求这个服务器的端口返回的数据都报错,一看返回的数据根本不是http的报文格式,然后经过一番排查发现是另外一个服务器同时监听了http服务器的这个端口。
五月君
2020/03/18
6540
源码分析 Node 的 Cluster 模块
系列3|走进Node.js之多进程模型
文:正龙(沪江网校Web前端工程师) 本文原创,转载请注明作者及出处 之前的文章“走进Node.js之HTTP实现分析”中,大家已经了解 Node.js 是如何处理 HTTP 请求的,在整个处理过程,它仅仅用到单进程模型。那么如何让 Web 应用扩展到多进程模型,以便充分利用CPU资源呢?答案就是 Cluster。本篇文章将带着大家一起分析Node.js的多进程模型。 首先,来一段经典的 Node.js 主从服务模型代码: const cluster = require('cluster'); cons
iKcamp
2018/03/30
1.4K0
系列3|走进Node.js之多进程模型
在Node.js中使用SO_RESUEPORT
前言:今天下载了Node.js最新版代码,并为Node.js的TCP模块增加了SO_RESUEPORT的能力,本文介绍一下具体的实现,关于SO_RESUEPORT的知识可以参考之前的文章或者网上文章。
theanarkh
2021/07/30
6560
浅析 Node 进程与线程
进程与线程是操作系统中两个重要的角色,它们维系着不同程序的执行流程,通过系统内核的调度,完成多任务执行。今天我们从 Node.js(以下简称 Node)的角度来一起学习相关知识,通过本文读者将了解 Node 进程与线程的特点、代码层面的使用以及它们之间的通信。
山月
2020/05/26
9640
浅析 Node 进程与线程
【nodejs原理&源码赏析(6)】深度剖析cluster模块源码与node.js多进程(下)
前两篇博文中已经分别介绍了使用cluster模块建立集群时主进程执行cluster.fork( )方法时的执行逻辑,以及net模块在不同场景下建立通讯的基本原理。本篇继续分析cluster模块,从第一个子进程开始建立服务器讲起,cluster基本用法示例代码再来一遍:
大史不说话
2019/06/15
8350
深入理解Node.js 进程与线程(8000长文彻底搞懂)
进程与 线程是一个程序员的必知概念,面试经常被问及,但是一些文章内容只是讲讲理论知识,可能一些小伙伴并没有真的理解,在实际开发中应用也比较少。本篇文章除了介绍概念,通过Node.js 的角度讲解 进程与 线程,并且讲解一些在项目中的实战的应用,让你不仅能迎战面试官还可以在实战中完美应用。
coder_koala
2019/08/08
2.7K0
深入理解Node.js 进程与线程(8000长文彻底搞懂)
通过源码分析nodejs的进程架构
我们知道nodejs是单进程(单线程)的,但是nodejs也为用户实现了多进程的能力,下面我们看一下nodejs里多进程的架构是怎么样的。 nodejs提供同步和异步创建进程的方式。我们首先看一下异步的方式,nodejs创建进程的方式由很多种。但是归根到底是通过spawn函数。所以我们从这个函数开始,看一下整个流程。
theanarkh
2020/03/31
7030
通过源码分析nodejs的进程架构
Node.js进阶之进程与线程
进程与线程在服务端研发中是一个非常重要的概念,如果您在学习的时候对这一块感到混乱或者不是太理解,可以阅读下本篇内容,本篇在介绍进程和线程的概念之外,列举了很多 Demo 希望能从实战角度帮助您更好的去理解。
五月君
2019/07/12
1.2K0
Node.js进阶之进程与线程
Node.js中的进程与线程
1. 回顾进程和线程的定义 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程(Thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。 2. Node.js的单线程 Node特点主线程是单线程的 一个进程只开一个主线程,基于事件驱动的、异步非阻塞I/O,可以应用于高并发场景。 Nodejs中没有多线程,为了充分利用多核cpu,可以使用子进程实现内核的负载均衡,那我们就要解决以下问题: Node.js 做耗
用户1097444
2022/06/29
1.3K0
Node.js中的进程与线程
【nodejs原理&源码赏析(4)】深度剖析cluster模块源码与node.js多进程(上)
cluster模块是node.js中用于实现和管理多进程的模块。常规的node.js应用程序是单线程单进程的,这也意味着它很难充分利用服务器多核CPU的性能,而cluster模块就是为了解决这个 问题的,它使得node.js程序可以以多个实例并存的方式运行在不同的进程中,以求更大地榨取服务器的性能。node.js在官方示例代码中使用worker实例来表示主进程fork出的子进程,使得前端开发者在学习过程中非常容易和浏览器环境中的worker实现的多线程混淆。为了容易区分,我们和node官方文档使用一致的名称,用集群中的master和worker来区分主进程和工作进程,用worker_threads来描述工作线程。
大史不说话
2019/06/02
1.1K0
原创:带你从零看清Node源码createServer和负载均衡整个过程
作为一名曾经重度使用Node.js作为即时通讯客户端接入层的开发人员,无法避免调试V8,配合开发addon。于是对Node.js源码产生了很大的兴趣~
theanarkh
2020/02/25
1.3K0
原创:带你从零看清Node源码createServer和负载均衡整个过程
简单分析下 Node.js 关于集群的那些事
nodejs 原有版本中没有实现多线程,为了充分利用多核 cpu,可以使用子进程实现内核的负载均衡。
coder_koala
2020/11/19
6760
Nodejs子进程
进程是CPU分配资源的最小单位,分配独立内存,进程之间可通信,但是必须通过内核,使用IPC接口来做,代价比较大 线程是CPU调度的最小单位
epoos
2022/06/06
1.5K0
Nodejs子进程
Node.js 多进程/线程 —— 日志系统架构优化实践
1. 背景   在日常的项目中,常常需要在用户侧记录一些关键的行为,以日志的形式存储在用户本地,对日志进行定期上报。这样能够在用户反馈问题时,准确及时的对问题进行定位。   为了保证日志信息传输的安全、缩小日志文件的体积,在实际的日志上传过程中会对日志进行加密和压缩,最后上传由若干个加密文件组成的一个压缩包。   为了更清晰的查看用户的日志信息。需要搭建一个用户日志管理系统,在管理系统中可以清晰的查看用户的日志信息。但是用户上传的都是经过加密和压缩过的文件,所以就需要在用户上传日志后,实时的对用户上传的日志
用户1097444
2022/06/29
1.5K0
Node.js 多进程/线程 —— 日志系统架构优化实践
深入了解 Node 的多进程服务
我们现在已经知道了Node是单线程运行的,这表示潜在的错误有可能导致线程崩溃,然后进程也会随着退出,无法做到企业追求的稳定性;另一方面,单进程也无法充分多核CPU,这是对硬件本身的浪费。Node社区本身也意识到了这一问题,于是从0.1版本就提供了child_process模块,用来提供多进程的支持。
用户8921923
2022/10/24
8180
《深入浅出Node.js》-玩转进程
Node 基于 V8 引擎构建,采用单线程模型,所有的 JavaScript 将会运行在单个进程的单个线程上,它带来的好处是:没有多线程中常见的锁以及线程同步的问题,操作系统在调度时也能减少上下文切换,提高 CPU 使用率。但是如今 CPU 基本均是多核的,真正的服务器往往还有多个 CPU,一个 Node 进程只能利用一个核,这带来硬件资源的浪费。另外,Node 运行在单线程之上,一个单线程抛出异常而没有被捕获,将会导致进程的崩溃。
李振
2021/11/26
8190
《深入浅出Node.js》-玩转进程
node进程间通信
作为一名合格的程序猿/媛,对于进程、线程还是有必要了解一点的,本文将从下面几个方向进行梳理,尽量做到知其然并知其所以然:
用户8200753
2023/10/22
3050
相关推荐
Node.js 是如何处理请求的
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验