mysql修改sql_mode为宽松模式
undefinedundefined
sql_mode
- ANSI
- TRADITIONAL
- STRICT_TRANS_TABLES
sql_mode为空#
最宽松的模式, 即使有错误既不会报错也不会有警告⚠️
ANSI#
宽松模式,对插入数据进行校验,如果不符合定义类型或长度,对数据类型调整或截断保存,报warning警告
TRADITIONAL#
严格模式,当向mysql数据库插入数据时,进行数据的严格校验,保证错误数据不能插入,报error错误。用于事物时,会进行事物的回滚
STRICT_TRANS_TABLES#
严格模式,进行数据的严格校验,错误数据不能插入,报error错误
NO_ENGINE_SUBSTITUTION#
no_engine_subtitution的作用:mysql 在create table 时可以指定engine子句(指定存储引擎),如果把引擎指定成一个并不存在的引擎, 这个时候mysql可以有两种行为供选择
- 直接报错
- 把表的存储引擎替换成innodb
如果 sql_mode 存在 no_engine_subtitution 的时候 ===> 直接报错
如果 sql_mode 不存在 no_engine_subtitution 的时候 ===> 把表的存储引擎替换成innodb
查询 sql_mode
1
|
mysql> select @@sql_mode;
|
在线修改 sql_mode
SET [GLOBAL|SESSION] sql_mode='modes'
当前 session 生效#
1
|
mysql> set sql_mode=`NO_FIELD_OPTIONS,HIGH_NOT_PRECEDENCE`;
|
全局生效#
1
|
mysql> set global sql_mode=`NO_FIELD_OPTIONS,HIGH_NOT_PRECEDENCE`
|
离线修改 sql_mode
1
|
➜ ~ vim /etc/my.cnf
|
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗