Mysql8.0 版本 timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',报错


 

处理方案:

  方案一: timestamp类型的字段不能设默认值为“0000-00-00 00:00:00” 要设为`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新'。

例如:

`update_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新日期',
`create_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '创建日期',

 

  方案二:MySQL在my.cnf加sql_mode 配置

     路径:vi /etc/my.cof

     配置:sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

  

 

 

 

  注意:MySQL8以后sql_mode以上已经取消了NO_AUTO_CREATE_USER这个关键字。如果加上这个字段你,会导致MySQL无法启动!!!去掉这个关键字,完美启动

  

  无法启动:

    Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM