mysql5.7 column cannot be null

背景

独立测试环境安装了数据库,但安装的版本是mysql 5.7的版本,而研发用的是mysql5.6的版本,在执行某个数据库操作的提示,提示column “xxxx”cannot be null

问题解决

最快速的方法就是直接询问研发,告知是DB问题,因为mysql从哪个版本开始默认的时间这块有改动,需要修改配置; MySQL升级后,在执行sql语句 insert INTO `表名` ( ) VALUES ( ); 时出现错误:

#1264 - Out of range value for column ‘’ at row 1 #1048 - Column 'id' cannot be null

原因:新版本的MySQL对字段的严格检查。(使用了auto_increment )

解决方法: 修改my.ini,将 sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION” 改为 sql-mode=”NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”。 重新启动MySQL。

Linux 下是改 /etc/my.cnf ,可能没有sql-mode, 可在[mysqld] 下加 sql-mode=”NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”

mysql> SELECT @@sql_mode;查询当前模式 但我在修改这个完后还是无法解决,后来又排查到时另外一个字段的问题-- explicit_defaults_for_timestamp 将 [mysqld] explicit_defaults_for_timestamp=false 就可以正常执行了的

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维

Zabbix历史数据处理办法

SELECT TABLE_NAME AS "Table", round(((data_length + index_length) / 1024 / 1024)...

1232
来自专栏CaiRui

Mysql-4-数据库的基本操作

1.创建数据库 create database database_name; 例:create database aa; show create databas...

2027
来自专栏冷冷

MySQL 解决外键约束不能删除数据的问题

第一种方法是使用MySQL 官方提供的文档方法             这个禁用约束: 运行这个命令 SET FOREIGN_KEY_CHECKS=0; 之后数...

22810
来自专栏Ryan Miao

Ubuntu18.04(linux)安装MySQL

Ubuntu18.04 安装mysql或者mariadb之后,发现普通用户和远程都没有权限连接。

1402
来自专栏乐享123

Cisco 3560X Config Cheat

1613
来自专栏菩提树下的杨过

mysql 学习笔记

以前主要使用oracle做数据库,现在换成mysql了,发现不一样的地方还是挺多的,记录一下: 一、centos上的yum install方式安装  完全卸...

2187
来自专栏用户2442861的专栏

mysql update,insert常用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

1053
来自专栏杂七杂八

mybatis实现一对一查询

sql语句 确定查询的主表:订单表 确定查询的关联表:用户表 关联查询使用内链接?还是外链接? 由于orders表中有一个外键(user_id),通过外键...

4547
来自专栏乐沙弥的世界

MySQL 用户与权限管理

    MySQL权限系统的主要功能是证实连接到一台给定主机的用户,并且赋予该用户在数据库上的相关DML,DQL权限。MySQL存取控制包含2个阶段,一是服务器...

2871
来自专栏Python攻城狮

PostgreSQL数据库在Debian8下的安装使用1.安装2.使用3.数据库操作4.安装过程中出现的问题5.常用SQL命令总结使用

博客地址:https://ask.hellobi.com/blog/zhiji 欢迎大家来交流学习。

972

扫码关注云+社区

领取腾讯云代金券