我正在使用codeigniter3。现在我想删除一条记录,然后显示数据库跟踪错误
无法删除或更新父行:外键约束失败 (soft.tbl_item_sub_category,CONSTRAINT `tbl_item_sub_category_ibfk_1 FOREIGN KEY(category_id)参考文献 tbl_item_category(id)ON UPDATE CASCADE)
主要问题是显示数据库错误看起来很难看。我想显示自己的错误消息。所以我使用$this->db->error()
但它不起作用。这是我的删除功能。处理此错误消息,但它不起作用。
删除功能()
public function delete($table,$id){
$this->db->where('id', $id);
$this->db->delete($table);
if ($this->db->affected_rows() > 0) {
return true; // to the controller
}
else {
$error = $this->db->error(); // to the controller
}
}
答案 0 :(得分:0)
返回false而不是$error = $this->db->error();
并访问控制器中的$this->db->error();
。
您的方法已修改......
public function delete($table,$id){
$this->db->where('id', $id);
$this->db->delete($table);
if ($this->db->affected_rows() > 0) {
return true; // to the controller
}
else {
$error = $this->db->error(); // to the controller
return $error;
}
}
控制器:
if (($err = $this->some_model->delete($table,$id)) !== true) {
print_r($err);
}
答案 1 :(得分:0)
使用此代码删除记录
<强> Controllere 强>
public function($id)
{
$t = $this->db->query("DELETE FROM table_name WHERE id='$id'");
$tt = $t->row_array();
if($tt>0)
{
return true;
}
else
{
$false= $this->db->error();
return $false;
}
}