Unknown column 'a' in 'where clause',出现这个问题,如何处理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unknown column 'a' in 'where clause',出现这个问题,如何处理?相关的知识,希望对你有一定的参考价值。

“Unknown column 'a' in 'where clause'”类似于Unknown column ‘xxx’ in ‘where clause’的问题。 

单从字面理解,我们很容易得出列名不存在的结论,但是,很多时候起始并不是由于列名出错造成的。而是由于拼凑sql语句时对字符类型数据没有用引号引起来造成的。

    例如:一个hql语句:

    final String hql = "from ActiveCert ac where ac.issuerName="+issueName";

    设置issueName值为ysy,则错误如下:

    Unknown column

    ysy′ in ‘where clause’

sql中如果issueName是整型的倒不会出现什么错误,而如果sql中字符串类型必须要包含在引号内。

所以修改hql为:

final String hql = "from ActiveCert ac where ac.issuerName='"+issueName+"'";

则错误消失。

参考技术A 你的where后面的条件中使用了一个不正确的字段名 a追问

字段名不是a,而字段名是user ,a 是这个字段名的记录。。。

追答

什么意思

追问

我现在是做一个登录界面,

通过帐号,密码登录,而这个账号和密码就要去数据库去提取,但就是不能提取

追答

select user,password from 表名 where user='a'
类似这样取数据

参考技术B 可能 column 写错了 参考技术C 你是想把user起别名叫a吧
那么user和a之间不用加逗号
select user a from 表名
这样用追问

字段名不是a,而字段名是user ,a 是这个字段名中记录。。。

还是出现这种问题,如何处理呢?

追答

select user from 表名 where user='a'
a上要加引号的?加了么?

本回答被提问者和网友采纳

Python Flask 向MySQL表里插入一条记录,提示Unknown column 'XXX' in 'field list

sql =‘ INSERT INTO `blog`.`user` (`id`, `username`) VALUES (%d, %s)‘ %(1,username)
我在给username赋值aaabbb后提示:"Unknown column ‘aaaabbb‘ in ‘field list‘"
找了半天问题,原来是%s没加双引号。
改为如下
sql =‘ INSERT INTO `blog`.`user` (`id`, `username`) VALUES (%d, "%s")‘ %(1,username)
成功
 
%s,一定要加上双引号

以上是关于Unknown column 'a' in 'where clause',出现这个问题,如何处理?的主要内容,如果未能解决你的问题,请参考以下文章

Python Flask 向MySQL表里插入一条记录,提示Unknown column 'XXX' in 'field list

mybatis plus Unknown column 'fieldame' in 'field list' 出现了列名找不到的问题

mysql出现 Unknown column 'bname' in 'where clause'和Unknown column 'bid' in 

Mysql语句 报错 "Unknown column ' ' in 'field list'"

在MySQL中出现Unknown column 'abc' in 'field list'怎么解决?

mysql查找表内某一字段,提示Unknown column 'gMaxMacWhiteNums' in 'field list'