mysql 查询避免Unknown column ‘xxx’ in ‘where clause’

但凡写过sql语句的人估计都曾经碰到过相似于Unknown column ‘xxx’ in ‘where clause’的问题。 单从字面理解,咱们很容易得出sql

列名不存在的结论,可是,不少时候起始并非因为列名出错形成的。而是因为拼凑sql语句时对字符类型数据没有用引号引发来形成的。ide


例如:一个hql语句:final String hql = "from ActiveCert ac where ac.issuerName="+issueName";spa

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

Unknown column
‘ysy′ in ‘where clause’

orm

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

因此修改hql为:final String hql = "from ActiveCert ac where ac.issuerName='"+issueName+"'";it

则错误消失。。class

相关文章
相关标签/搜索