IT序号网

mysql错误

flyfish 2022年05月18日 数据库 139 0
mysql单表多timestamp报错#1293 - Incorrect table definition; there can be only one TIMESTAMP column with ...
 
一个表中出现多个timestamp并设置其中一个为current_timestamp的时候经常会遇到
#1293 - Incorrect table definition; there can be only oneTIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATEclause
原因是当你给一个timestamp设置为on updatecurrent_timestamp的时候,其他的timestamp字段需要显式设定default值
 
但是如果你有两个timestamp字段,但是只把第一个设定为current_timestamp而第二个没有设定默认值,mysql也能成功建表,但是反过来就不行...
N.B:上面的解释是网上的,实际上on updatecurrent_timestamp(在navicat中文版中为“刷新当前时间戳计时”选项)只能设置一个,或者不设置都可以,不能同时设置2个及以上。
因此,在设计表时,要注意timestamp类型的字段的先后顺序。
 

评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

解决com.mysql.jdbc.PacketTooBigException: Packet for query is too large问题