mysql 低版本导入表中包含两个TIMESTAMP报错问题
错误代码: 1293
Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
原因: mysql版本低版本不支持在一个表里面 有2个 timestamp 类型 的列.
SELECT VERSION(); 来查看一下服务器的版本
1、5.7版本的 timestamp 类型 ,在表设计时多个字段为 timestamp 时,都可以使用CURRENT_TIMESTAMP作为默认值,而且都可以根据当前时间戳更新
2、而5.5-5.6.4版本中 ,在表设计时多个字段为timestamp时候,只能有一个CURRENT_TIMESTAMP作为默认值,而且要在第一个timestamp类型字段设置。如果当前的timestamp字段为非空的话默认是根据当时时间戳更新,所以此处要注意,如果你是update_time的话是可以的,如果你是create_time的话此字段为非空,那么默认根据当前时间戳更新,你以后每次修改数据都会导致创建时间变化,这是不允许的,所以此处要注意
尽量用高版本mysql
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通