mysql中timestamp格式传入空值并设置为当前时间

mysql中timestamp格式传入空值并设置为当前时间

情境举例

写新增订单功能时需要插入一组数据
mysql中timestamp格式传入空值并设置为当前时间
mysql中timestamp格式传入空值并设置为当前时间

其中order_time与pay_time为timestamp格式,要求可传入空值并且实现能够生成当前时间(自动维护)

进入新增订单页面的时候,通常订单时间与支付时间为自动生成,而非手动输入,所以这里需要传入俩个空值(order_time与pay_time)
mysql中timestamp格式传入空值并设置为当前时间

解决方法

而当点击提交后,eclipse后台日志会报类似“order_time”值不能为空这样的错误,而无法传入空值会导致所有信息录入失败,要解决这个问题只需在mysql根目录下的my.ini文件中添入下列语句:explicit_defaults_for_timestamp=0

mysql中timestamp格式传入空值并设置为当前时间
(explicit_defaults_for_timestamp为MySQL系统变量 默认为打开状态 当其打开时timestamp无法接受空值 需要手动将其关闭)
设置完成后重启mysql服务即可
(重启方法:用管理员模式打开cmd 输入:
net stop mysql 回车等待
net start mysql 回车等待