mysql sql_mode数据验证检查方法
sql_mode 功能
sql_mode 会影响MySQL支持的sql语法以及执行的数据验证检查。通过设置sql_mode ,可以完成不同严格程度的数据校验,有效地保障数据准确性
sql_mode 严格模式 VS 宽松模式
宽松模式
比如,插入的数据不满足 表的数据类型,也可能接受,并且不报错,只会有警告而且。
一个字段设置 char(10),如果插入 1234567890ABC,会ABC会自动舍去,只保留1234567890,sql不报错的。

** 严格模式 ** 默认是严格模式
插入数据类型,不能隐式转换的,最终就会报错。
长度规定长度,会报错。
设置sql_mode
临时设置模式
set global sql_mode =‘XXXX’ ; ## 全局 重启mysql 服务 就失效
set session sql_mode=‘XXXX’; ## 当前会话 关闭会话 就失效
永久设置模式
windows 系统 设置 my.ini (一般位置 C:\ProgramData\MySQL\MySQL Server 5.7 | C:\ProgramData\MySQL\MySQL Server 8.0),
但 要重启 mysql 服务 才生效

linux /etc/my.cnf
生成环境,一般不能随便重启 mysql服务的,所有采用 临时设置方法+永久设置方式 来解决线上问题。
查看mysql sql_mode
show variables like ‘sql_mode'; select @@global.sql_mode; select @@session.sql_mode; select sql_mode


sql_mode 参数值 可以设置

到此这篇关于mysql sql_mode数据验证检查的文章就介绍到这了,更多相关mysql sql_mode数据验证内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Mysql错误Every derived table must have its own alias解决方法
这篇文章主要介绍了Mysql错误Every derived table must have its own alias解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-08-08
MySQL创建唯一索引时报错Duplicate entry * for key问题
这篇文章主要介绍了MySQL创建唯一索引时报错Duplicate entry * for key问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-09-09
登录MySQL时出现SSL connection error: unknown
这篇文章主要介绍了登录MySQL时出现SSL connection error: unknown error number错误的解决方法,文中通过图文结合的形式讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下2024-12-12
MySQL count(*),count(id),count(1),count(字段)区别
本文主要介绍了MySQL count(*),count(id),count(1),count(字段)区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-05-05


最新评论