我在codeigniter 2.0中有一个项目,我用过:
$query = $this->db->query('select * FROM my_table');
if($query->num_rows()==1) return true; else return false;
但是在codeigniter 3.0.3中,我不知道如何检查(更新,选择,插入,删除......)。
答案 0 :(得分:1)
表示插入,更新
$this->db->affected_rows();
显示受影响的行数,
执行“写”类型查询(插入,更新等)。
if ( $this->db->affected_rows() > 0 )
{
return TRUE;
}
else
{
return FALSE;
}
选择
执行“选择”类型查询(插入,更新等)。
if ($query->num_rows() > 0)
{
$dataSet = $query->result();
}
删除
$res = $this->a_model->delete_product($id); // example delete
if($res == FALSE)
{
}else
{
}
答案 1 :(得分:0)
$query = $this->db->query("SELECT * FROM my_table");
$dataSet = array();
if ($query->num_rows() > 0)
{
$dataSet = $query->result();
}
print_r($dataSet);
答案 2 :(得分:0)
来自Cogidignitor用户指南3:
选择:
查询返回的行数。注意:在此示例中,$ query是查询结果对象分配给的变量:
$query = $this->db->query('SELECT * FROM my_table');
if($query->num_rows() > 0){
return true;
}
else{
return false;
}
对于UPDATE& INSERT语句:
$this->db->affected_rows()
执行“写入”类型查询时显示受影响的行数 (插入,更新等)。
示例:强>
$this->db->update('UPDATE statement');
$this->db->affected_rows();
$this->db->insert('INSERT statement');
$this->db->affected_rows();
替代INSERT:
您还可以使用最后一个插入ID:
$this->db->insert('INSERT statement');
$id = $this->db->insert_id();
if($id > 0){
return true;
}
else{
return false;
}
对于删除:
DELETE总是返回true in result如果执行查询,则返回false,affected_rows也将返回相同的结果:
$this->db->delete('DELETE statement');
if($this->db->affected_rows()){
return true;
}
else{
return false;
}