MySQLWorkbench里的稀奇事之timestamp的非空默认值

在创建表时,某字段为非空时间戳,timestamp not null 问题来了,使用workbench建表时,如果值非空,是需要有一个默认值的,不然会报错。


那么,如果是更新时自动填充可以使用DEFAULT ON UPDATE CURRENT_TIMESTAMP,而只在INSERT时插入,不更新则使用CURRENT_TIMESTAMP;

问题是,如果不想使用CURRENT_TIMESTAMP怎么办泥?


 `end_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',


这个是用终端的show create table来查看到的语句(偷了个懒,使用了可视工具建表),但是奇怪的问题是,这个语句,CL模式下可以运行的很好,但是在workbench里却无法运行,查了半天也没有找到原因。


ps: 另外,一个表里不可以有多于一处使用CURRENT_TIMESTAMP来作为默认值,这个是MySQL的用法,与workbench无关。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值