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

相關文章
相關標籤/搜索