mysql 5.7 严格模式_mysql 5.7中严格模式的问题
在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 严格模式_mysql 5.7中严格模式的问题相关推荐
- mysql的几种模式_MYSQL复制的几种模式
MySQL 5.1 中,在复制方面的改进就是引进了新的复制技术:基于行的复制. MYSQL复制的几种模式 MySQL 5.1 中,在复制方面的改进就是引进了新的复制技术:基于行的复制. 简言之,这种新 ...
- 工厂模式 java好处_java中工厂模式的优缺点有哪些
java中工厂模式的优缺点有哪些 发布时间:2020-12-03 15:15:07 来源:亿速云 阅读:79 作者:Leah 这篇文章将为大家详细讲解有关java中工厂模式的优缺点有哪些,文章内容质量 ...
- mysql sql 连接查询语句_Mysql——sql数据库中的连接查询
1.1.1 交叉连接(CROSS JOIN) 交叉连接(CROSS JOIN):有两种,显式的和隐式的,不带ON子句,返回的是两表的乘积,也叫笛卡尔积. 例如:下面的语句1和语句2的结果是相同的. ...
- mysql的其中连接方式_MySQL选择连接中的位置,但不在其中
我的数据库中有三个表: 产品展示 > id(int,主键) >名称(varchar) 标签 > id(int,主键) >名称(varchar) 产品标签 > produc ...
- mysql 数字用什么类型_MySQL数字类型中的三种常用种类
数字类型 MySQL数字类型按照我的分类方法分为三类:整数类.小数类和数字类. MySQL数字类型之一我所谓的"数字类" 就是指 DECIMAL 和 NUMERIC,它们是同一种类 ...
- mysql备份表数据库表_mysql 备份数据库中的一张表
方案一: 备份db1里的t7表[root@stu1 mysql]# mysqldump -u root -p123 db1 t7 > t7.sql 恢复db1里的t7表[root@stu1 m ...
- mysql 目录武沛齐_MySQL数据表中的数据操作
1.插入数据 insert into t_user (username,password,nickname) values ('foye','123','佛爷'); 以下方式必须写出所有的字段 ins ...
- python调用库函数用ecb模式加密图片_AES中ECB模式的加密与解密(Python3.7)
本文主要解决的问题 本文主要是讲解AES加密算法中的ECB模式的加密解密的Python3.7实现.具体AES加密算法的原理这里不做过多介绍,想了解的可以参考文末的参考链接. 主要解决了两个问题: 在P ...
- mysql存储过程_MySQL带out和inout模式参数的存储过程
一.OUT模式 out模式参数写法和in相似 out 参数名 参数类型 同样,存储过程也支持一个或多个返回值. 以员工表和部门表来测试 show create table emp; CREATE TA ...
最新文章
- AMD Cpu 性能分析
- Windows Server 2012 RS 配置IIS8.0+发布网站
- 【LeetCode 剑指offer刷题】树题4:104 Maximum Depth of Binary Tree
- 周老师打酒喝光回 递归
- Google I/O 2016到底讲了啥
- 软件开发的流程和常用模式
- south的使用总结
- 虚假共识—阿比勒尼悖论:“枪打出头鸟”与“事后诸葛亮”
- 图形化生物软件专题(4):MEGAN
- 使用certbot生成https证书
- jquery ui和easy ui联合使用
- Recon-all命令实例
- Quartz执行逻辑(三)QRTZ_FIRED_TRIGGERS表的作用
- java冒泡排序(java冒泡排序经典代码)
- 上蔡一高2021高考成绩查询,喜报!上蔡高考英雄榜出炉!
- Oracle Database 12c Security - 1. Security for Today’s World
- 干货|4个全网最实用的OCR图片文字识别软件合集
- 标量量化和矢量量化实验
- 【矩阵乘法】JZOJ_5223 B
- 初识Linux(1):入门简介、基础指令
热门文章
- opc客户端_OPC UA 预备知识 OPC 核心概念
- sql语句为什么大写居多_懂EXCEL就会SQL,从此查数不求人
- FFT变换频谱图中幅值的设置方法
- BootStrap中的日期时间组件datetimepicker
- java 关闭守护线程_Java并发编程之线程生命周期、守护线程、优先级、关闭和join、sleep、yield、interrupt...
- 面向对象设计原则与设计模式
- rn webview加载本地静态html,React Native - Webview 加载本地文件
- 高中计算机编辑程序,高中信息技术信息的编程加工教案
- java println和print_java中的print和println有区别吗
- git如何查看和切换账号