赞
踩
刚开始学习数据库操作,今天存数据时发现,保存的时候报错(Error 1292: Incorrect datetime value: '0000-00-00' for column 'deleted_at' at row 1),之后就搜索了下原因,是因为MySQL存日期时不允许出现这种格式导致的。下面记录下解决问题的经过:
先是根据Mysql 数据库date, datetime类型设置0000-00-00默认值报错问题 这篇博客操作的。但是发现。我电脑上没有文章中提到的cnf文件。于是就在网上搜索该文件。粘贴了my.cnf这个内容到/etc/my.cnf里边。
可是等我将
代码如下:
sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
粘贴到文件所在位置时,还是不成功。MySQL直接启动不起来。后来在命令行中设置sql_mode的时候看到了错误提示:
mysql> SET GLOBAL sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
ERROR 1231 (42000): Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'
ERROR 1231 (42000): Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'意思就是不让设置NO_AUTO_CREATE_USER呗。那就不设置呀。之后再my.cnf文件中的sql-mode一行去掉改值就成功了。
MySQL版本:8.0.13
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:MySQL日期数据类型、时间类型使用总结
mysql 日期和时间格式转换实现语句
MySql用DATE_FORMAT截取DateTime字段的日期值
MySql日期查询语句详解
详解Mysql中日期比较大小的方法
mysql中格式化日期详解
详解MySQL日期 字符串 时间戳互转
MySQL日期函数与日期转换格式化函数大全
MySQL 获得当前日期时间的函数小结
MySQL的Data_ADD函数与日期格式化函数说明
mysql常用日期时间/数值函数详解(必看)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。