在mysql 5.7中,默认使用的是严格模式,这个有的时候会太严格,带来问题,
比如:
mysql> CREATE TABLE `events_t` (
-> `id` int(11) NOT NULL AUTO_INCREMENT,
-> `event_date` datetime NOT NULL,
-> `profile_id` int(11) DEFAULT NULL,
-> PRIMARY KEY (`id`),
-> KEY `event_date` (`event_date`),
-> KEY `profile_id` (`profile_id`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=latin1
-> ;
Query OK, 0 rows affected (0.02 sec)
mysql> insert into events_t (profile_id) values (1);
ERROR 1364 (HY000): Field 'event_date' doesn't have a default value
这里日期就必须要有默认值,不能 NULL,但:
mysql> alter table events_t change event_date event_date datetime NOT NULL default '0000-00-00 00:00:00';
ERROR 1067 (42000): Invalid default value for 'event_date'
mysql> alter table events_t change event_date event_date datetime NOT NULL default '2000-00-00 00:00:00';
ERROR 1067 (42000): Invalid default value for 'event_date'
也是不行的,必须要有真实日期默认
mysql> alter table events_t change event_date event_date datetime NOT NULL default '2000-01-01 00:00:00';
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> insert into events_t (profile_id) values (1);
Query OK, 1 row affected (0.00 sec)
因此只有日期格式改为timestamp,或者用NULL,或者在insert的时候用now()产生日期,
如果不用默认模式,可以这样:
mysql> set global SQL_MODE="NO_ENGINE_SUBSTITUTION";
分享到:
相关推荐
前言 前段时间,将线上MySQL数据库升级到了5.7。考虑到可能产生的不兼容性,在升级之前,确实也是战战兢兢,虽然测试环境,开发环境早在半年前就已提前...分组求最值的某些写法在MySQL5.7中得不到预期结果,这点,相对
数据库:mysql5.7 开发软件:eclipse和idea都可以 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性。该系统包含了用户信息管理、商品分类管理、商品信息管理、商品咨询...
数据库:mysql5.7 开发软件:eclipse和idea都可以 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,本次开发的学生干部管理系统实现了字典管理、公告信息管理、留言管理、信访举报管理、学生...
数据库:mysql5.7 开发软件:eclipse和idea都可以 系统功能: 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性本次开发的健身房管理系统实现了字典管理、健身房管理、教练...
数据库:mysql5.7 开发软件:eclipse和idea都可以 本站是一个B/S模式系统,采用Spring Boot框架,MYSQL数据库设计开发,充分保证系统的稳定性。基于工程教育认证的计算机课程管理平台功能有个人中心,通知公告管理...
1.2.3 开启innodb严格检查模式 39 1.3 动态更改系统配置参数 39 1.3.1 支持动态更改独立表空间 39 1.3.2 支持动态更改innodb锁超时时间 40 1.4 innodb新参数汇总 40 1.5 同步复制新参数汇总 48 1.6 sql语句...
数据库:mysql5.7 开发软件:eclipse和idea都可以 系统功能: 一款基于SpringBoot+Vue的常规应急物资管理系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本常规应急物资管理系统是建立在B...
数据库:mysql5.7 开发软件:eclipse和idea都可以 B/S模式,Java语言,Mysql数据库 管理员功能: 管理员登录:填写账号密码登录 项目管理:查看项目,删除项目操作 公告信息管理:新增公告,修改公告,删除公告操作 ...
基于SpringBoot+Vue的实习管理系统源码+数据库.zip 高分通过项目,已获导师指导。...数据库:mysql 5.7(5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9
基于SpringBoot+Vue的医院信管系统源码+数据库.zip 高分通过项目,已获导师指导。 ...数据库:mysql 5.7(5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9
本中药实验管理系统有管理员,教师,学生,实验员。管理员功能有个人中心,学生管理,教师管理,实验员管理,实验教学管理,在线学习管理,实验信息管理,实验预约...数据库:mysql5.7 开发软件:eclipse和idea都可以
数据库:mysql5.7 开发软件:eclipse和idea都可以 系统功能: 视频网站系统管理员功能有个人中心,用户管理,视频分享管理,视频排名管理,平台公告管理,视频类型管理,交流论坛管理,留言板管理,系统管理等。 ...
基于SpringBoot+Vue的班级综合测评管理系统源码+数据库.zip 高分通过项目,已...数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9 浏览器:谷歌浏览器
本新闻稿件管理系统管理员功能有个人中心,用户管理,记者管理,审批员管理,新闻分类管理,新闻信息管理,系统管理等。记者发布新闻信息,审批员进行审核,用户进行...数据库:mysql5.7 开发软件:eclipse和idea都可以
本企业级工位管理系统管理员和员工。管理员功能有个人中心,部门信息管理,工位信息管理,使用情况管理,工位分配管理。员工可以查看个人中心,部门信息,和工位分配...数据库:mysql5.7 开发软件:eclipse和idea都可以
基于SpringBoot+Vue的基于B2C模式的电子商务平台设计与实现(源码+数据库+文档).zip 高分通过项目,已获导师指导。...数据库:mysql 5.7+ 数据库工具:Navicat11+ 开发软件: idea/eclipse Maven包:Maven3.3.9+
数据库:mysql5.7 开发软件:eclipse和idea都可以 本人力资源管理系统分为管理员还有用户两个权限,管理员可以管理用户的基本信息内容,可以管理汽车信息以及汽车的租赁信息,能够与用户进行相互交流等操作,用户...
基于SpringBoot+Vue的超市进销存系统源码+数据库.zip 高分通过项目,已获导师指导。 本项目是一套基于Springboot的超市进销存系统,...数据库:mysql 5.7(5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myecli
MySQL 5.5〜5.6 :由于MySQL中的错误,该软件包仅在禁用严格模式的情况下才能使用。 在config/database.php文件中'strict' => false,为MySQL连接设置'strict' => false, 。 MariaDB 10.2+ :由于MariaDB中的,该...
本在线教育系统管理员功能有个人中心,用户管理,讲师管理,普通管理员管理,课程管理员管理,课程管理,课程分类管理,教师管理,名师管理,系统管理,订单管理。...数据库:mysql5.7 开发软件:eclipse和idea都可以