三牌楼java韬
2017-11-15 14:37
Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause 我运行sql出现了这个问题。。。黑人问号
方法一:升级Mysql,将Mysql升级到5.7版本以上就不会出现类似的问题了。
方法二:将设定为CURRENT_TIMESTAMP的时间戳字段放在所有没有设定默认值的时间戳字段前面,则可以建表成功(实际上CURRENT_TIMESTAMP时间戳默认值只能设置一个或者不设置,不能有两个以上)。
可以把 DEFAULT CURRENT_TIMESTAMP 去掉,详细解释参考下面的博文
http://blog.sina.com.cn/s/blog_49a665e10100cb52.html
安装提示,把 default CURRENT_TIMESTAMP去除。
sql写成这样:
`create_time` timestamp not null comment '创建时间'
然后insert语句中,再给create_time赋值。
insert into
seckill(name,number,start_time,end_time,create_time)
values
('1000元秒杀iphone7',100,'2017-12-24 00:00:00','2017-12-25 00:00:00',now())
我猜测是sql版本的问题,我也出现这个问题了。我的mysql是5.1
把你的sql语句放在数据库里执行一下,应该是TIMESTAMP 列赋值时出错
Java高并发秒杀API之业务分析与DAO层
87424 学习 · 496 问题
相似问题
回答 2