mysql数据库,字符串使用双引号““导致报错,使用单引号‘‘不报错,Unknown column ‘user-test‘ in ‘where clause‘

文章目录

一、完整报错

txt 复制代码
> 1054 - Unknown column 'user-test' in 'where clause'

二、报错数据

sql 复制代码
SELECT *
FROM config_info
WHERE config_info.data_id="user-test"

三、报错原因

  • 因为sql_mode里面有 ANSI_QUOTES,这个校验模式。所以导致报错
  • ANSI_QUOTES:不能用双引号来引用字符串,因为它被解释为识别符
  • 更改sql_mode详细过程,点击跳转

四、解决方式

1、更改执行sql

sql 复制代码
SELECT *
FROM config_info
WHERE config_info.data_id='user-test'	

2、更改sql数据校验模式(改为默认校验)

sql 复制代码
SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
相关推荐
DOUBLEDdinosaur几秒前
屏幕数字监控 + 警报
android
JAVA拾贝4 分钟前
全链路数据监控 Binlog View
mysql·canal·binlog·binlog view·数据链路监控
M0066885 分钟前
低代码平台使用留存的技术基础与系统设计逻辑
android·rxjava
wangbing112518 分钟前
平台介绍-开放API后台微服务
数据库·微服务·架构
nono牛20 分钟前
深入理解gatekeeperd 与 android.hardware.gatekeeper@1.0-service调用规则
android
高一要励志成为佬21 分钟前
【数据库】第三章 关系数据库标准语言SQL
数据库·sql
lxysbly24 分钟前
红白机模拟器安卓版带金手指
android
尽兴-27 分钟前
MySQL执行UPDATE语句的全流程深度解析
数据库·mysql·innodb·dba·存储引擎·update
alonewolf_9930 分钟前
MySQL 架构与SQL执行全流程深度解析
sql·mysql·架构
MXM_77732 分钟前
laravel 并发控制写法-涉及资金
java·数据库·oracle