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

posted @   牛奔  阅读(1022)  评论(0编辑  收藏  举报
编辑推荐:
· 基于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最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示