我在从数据库中选择数据时遇到问题。 它向我显示以下错误
A Database Error Occurred Error Number: 1054 Unknown column 'BA' in 'where clause' SELECT * FROM crime_details INNER JOIN crime_slink ON crime_slink.report_ID =crime_details.report_ID INNER JOIN crime_suspect ON crime_suspect.id=crime_slink.suspect_id INNER JOIN crime_vlink ON crime_vlink.report_ID=crime_details.report_ID INNER JOIN crime_victim ON crime_victim.id=crime_vlink.victim_id WHERE crime_details.report_ID =BA-12-00002 Filename: C:\xampp\htdocs\CNPPO\system\database\DB_driver.php Line Number: 330似乎问题出在这一部分WHERE crime_details.report_ID =BA-12-00002我认为问题是由我的查询中的破折号或连字符引起的。 我使用codeigniter的$this->db-query()函数进行查询。
I'm having a problem with selecting data from my database. It show me following error
A Database Error Occurred Error Number: 1054 Unknown column 'BA' in 'where clause' SELECT * FROM crime_details INNER JOIN crime_slink ON crime_slink.report_ID =crime_details.report_ID INNER JOIN crime_suspect ON crime_suspect.id=crime_slink.suspect_id INNER JOIN crime_vlink ON crime_vlink.report_ID=crime_details.report_ID INNER JOIN crime_victim ON crime_victim.id=crime_vlink.victim_id WHERE crime_details.report_ID =BA-12-00002 Filename: C:\xampp\htdocs\CNPPO\system\database\DB_driver.php Line Number: 330It seems like the problem is in this part WHERE crime_details.report_ID =BA-12-00002 I think the problem was caused by the dashes or hyphens in my query. Im using $this->db-query() function of codeigniter for my queries.
最满意答案
crime_details.report_ID包含一个VARCHAR ,因此你应该在哪里
WHERE crime_details.report_ID = 'BA-12-00002'即,您需要将值包装在引号中。
此外,不是使用$this->db->query()来运行您手写的MySQL查询,而应该使用ActiveRecord的查询构建器,它将为您处理此问题。 例如,你可以做到:
$query = $this->db->get_where('crime_reports', array( 'report_ID' => 'BA-12-00002' ));crime_details.report_ID holds a VARCHAR, so your where condition should be
WHERE crime_details.report_ID = 'BA-12-00002'i.e., you need to wrap the value in quotes.
Also, instead of using $this->db->query() to run your hand-written MySQL query, you should use ActiveRecord's query builder which would have taken care of this for you. For example, you could have done:
$query = $this->db->get_where('crime_reports', array( 'report_ID' => 'BA-12-00002' ));更多推荐
发布评论