是否查询执行发生在get_where()
以下的笨活动记录语句的WHERE子句?
$this->db->select('*');
$q = $this->db->get_where('Contacts', array('id' => $contact_id));
$sql = $this->db->last_query();
或者它发生一次调用result_array()
而且是$this->db->last_query();
在获得查询字符串的可靠方法。
查询执行发生在所有获得类似的方法
$this->db->get('table_name');
$this->db->get_where('table_name',$array);
虽然last_query包含上次运行的查询
$this->db->last_query();
如果你想查询字符串不执行,你将不得不这样做。 进入系统/数据库/ DB_active_rec.php从这些功能中删除公共或受保护的关键字
public function _compile_select($select_override = FALSE)
public function _reset_select()
现在,您可以编写查询,并把它在一个变量
$this->db->select('trans_id');
$this->db->from('myTable');
$this->db->where('code','B');
$subQuery = $this->db->_compile_select();
现在,所以如果你想要写另一个查询的对象将被清除复位查询。
$this->db->_reset_select();
而事情做。 干杯!!! 注意:使用这种方式,您必须使用
$this->db->from('myTable')
代替
$this->db->get('myTable')
它运行查询。
看看这个例子