我正在整合Codeigniter和Firebird ......我创建了一个包含两个表的简单数据库:CITIES和STATES。
当我运行应用程序时,连接正常,但是当我尝试使用所有状态时使用:
$qry = $this->db->get("states");
我收到以下错误消息:
错误号:-204动态SQL错误SQL错误代码= -204表 未知状态在第2行第1列SELECT * FROM“states”文件名: C:/xampp/htdocs/ci_test/application/controllers/Home.php行号: 11
我意识到问题的原因是SQL查询的双引号。导致查询:
SELECT * FROM states;
运行正常。
有没有人遇到过这个问题和/或知道如何解决它?
答案 0 :(得分:1)
看起来codeigniter引用了对象名称。在Firebird中,不带引号的名称不区分大小写:它们的处理方式就像它们是大写的一样。带引号的名称区分大小写:它们按原样处理。这意味着表STATES
可以引用为states
,STATES
,"STATES"
,但不能引用为"states"
。
我不知道codeigniter,但您可以应用以下解决方案:
$this->db->get("STATES")
,答案 1 :(得分:0)
function get_states_data() {
$this->db->select ( '*' );
$this->db->from ( 'states' );
$query = $this->db->get ();
return $query->result ();
}
检查此代码:)
答案 2 :(得分:0)
只需使用此代码而不是现有代码
self.navigationController!.navigationItem.rightBarButtonItem = menu_button_