mysql建表报timestampn Error : Invalid default value for 'timestamp'

环境 :mysql 5.7.16

系统:centos 6.8 64

百度查询到 ,因为是版本的问题导致。

解决方案:

1、打开/etc/my.cnf 配置文件

在最后添加如下:

explicit_defaults_for_timestamp = true

sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

保存,重启mysql,测试OK。

mysql建表报timestampn Error : Invalid default value for 'timestamp'

时间: 2025-01-04 04:35:34

mysql建表报timestampn Error : Invalid default value for 'timestamp'的相关文章

mysql5.7下的timestampn Error : Invalid default value for 'timestamp'

表格创建是爆了个错 Error : Invalid default value for 'timestamp' 参考:http://www.jb51.net/article/71107.htm 这版本导致的. mysql配置文件 mv /usr/local/mysql/suport-file/default-my.cnf /etc/my.cnf explicit_defaults_for_timestamp=1 http://www.shangxueba.com/jingyan/1609295.

Mysql 报错:#1067 - Invalid default value for 'update_time

由于 字段UPDATE_TIME 的字段类型是 timestamp ,默认值是:'0000-00-00 00:00:00' 即:`UPDATE_TIME` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新时间'; 在对这个表进行创建的时候,提示: #1067 - Invalid default value for 'update_time 原因: timestamp有效时间在:1970-01-01 00:00:00 到 20

Invalid default value for 'time'

现象:MySQL5.7版本之后,date, datetime类型设置默认值"0000-00-00",出现异常:Invalid default value for 'time' 原因:在命令行窗口查看当前的sql_mode配置: select @@sql_mode; 结果如下: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO

关于mysql数据库中date time的错误问题(Error Code: 1067. Invalid default value for xxx)

在新建表的时候突然出现一个错误信息: Error Code: 1067. Invalid default value for 'start_time' 在经过一番折腾之后发现是datetime不能设置默认值,所以想要设置默认值的话我们也可以使用timestamp然后设置默认值为current_timestamp即可 不过除了在数据库中设置默认值外我们也可以在程序进行设置,如果是5.6的mysql数据库应该不存在不能设置默认值的问题

mysql 导入数据error 1067(42000) Invalid default value for 'update'

问题描述:mysql导入数据时出现error 1067错误. 1 首先找到要出错行:CREATE TABLE `fct_sales` ( `updateTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间') ENGINE=InnoDB DEFAULT CHARSET=utf8; 2 搜索datetime 与current_timestamp 的用法 3 修改datetime--timestamp 或者删除 default

MySQL 5.7 Invalid default value for 'CREATE_TIME'报错的解决方法

出处:http://blog.itpub.net/15498/viewspace-2136006/ 由于数据库的升级,今天在执行从MySQL 5.6导出来的SQL文件时报错: mysql> source cms_user.sqlQuery OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected, 1 warning (0.04 sec) ERROR 1067 (42000): Invalid default value for 'CREA

Mysql5.7.11 安装 cacti0.8.8f ,在导入cacti.sql数据库时出现下记错误,导致数据库导入终止: ERROR 1067 (42000) at line 1847: Invalid default value for 'status_fail_date'

解决方法:vim /etc/my.cnf 文件,加入 : sql-mode="NO_ENGINE_SUBSTITUTION" , Systemctl restart mysqld 进入mysql的之后可执行: select @@sql_mode 查询当前使用的sql_mode是什么 Mysql5.7.11 安装 cacti0.8.8f ,在导入cacti.sql数据库时出现下记错误,导致数据库导入终止: ERROR 1067 (42000) at line 1847: Invalid

Mysql添加用户错误:ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value解决方法

添加用户 insert into mysql.user(Host,User,Password) values("localhost","test",password("1234")); 报以下的错误 ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value错误 mysql5.1以上版本,我是在5.6版本上操作的. 错语原因: mysql用户表的中某些字段不能为空,没有默

解决:ERROR 1067 (42000): Invalid default value for 'login_time'

如图操作数据表的时候出现上图的错误 问题的原因就是出在timestamp的默认值不正确,针对以上问题的解决方案是:修改默认值为当前值. sql语言代码: Alter table user modify login_time timestamp Default CURRENT_TIMESTAMP NOT NULL; 修改完之后就可以正常操作,对数据表进行增删改操作了.希望以上内容对您有所帮助,欢迎留言交流. 解决:ERROR 1067 (42000): Invalid default value