【发布时间】:2013-10-16 09:25:53
【问题描述】:
我正在做的是使用 Codeigniter 活动记录更新一行。 DBMS 是 PostgreSQL。我想捕捉错误,而不是像下面这样的屏幕。
如果我解释遵循此过程的原因是,如果更新查询函数正确执行且没有错误,则根据第一个函数的返回值(true 或 false)执行第二个函数。
我尝试了以下方法都不起作用。
方法一
$this->db->where('id', $folio_id);
$this->db->update('folio', $data);
if(!empty($this->db->_error_number()))
{
echo "ERROR";die;
}
方法二
try
{
$this->db->where('id', $folio_id);
$this->db->update('folio', $data);
}
catch (Exception $e)
{
echo "ERROR";die;
}
如果查询执行没有错误,我要做的就是返回 true,否则如果有任何错误,则返回 false。
如何捕捉数据库错误而不让它最终死掉?
【问题讨论】:
-
试试这个.. 你需要改变一点 CI 才有例外> stackoverflow.com/questions/15858372/…
-
再想你可以改变错误显示而不是跳过核心更改。你可以将 db 错误设置为等于默认的 500 错误页面。这样你根本不需要尝试 catch。 .
标签: php sql database codeigniter postgresql