欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

报错1054 Mysql问题分析及解决方法详解

程序员文章站 2022-03-02 17:27:01
报错1054 mysql问题分析及解决方法详解 sql 1: select * from table1 where courier_phone =132aaaaaaaa sql 2:...

报错1054 mysql问题分析及解决方法详解

sql 1: select   * from  table1 where courier_phone =132aaaaaaaa

sql 2: select   * from  table1 where courier_phone ='132aaaaaaa'

courier_phone 在中为 varchar类型;

sql 1 报出错误 1054

可是执行sql 3, sql4 都没有问题。

sql 3: select   * from  table1 where courier_phone =13212345678

sql 4: select   * from  table1 where courier_phone ='13212345678'

内心很是困惑,为什么加上 引号就能成功

13212345678与132aaaaaaa 不都是转换成字符串了,怎么就一个不成功?

答:13212345678 ,132aaaaaaa 不加引号都会默认为数值类型,当sql执行前, mysql库会先加载解析sql,13212345678 成功解析成为数值类型,但是132aaaaaaa 不能解析成为数值类型(所以就报1054的错误)。