[英]how to use try catch for zend dbtable delete
我应该在下面的代码片段中使用try catch吗? 我认为,如果zend无法删除行或异常,它将返回整数(0)。 那么什么更好,为什么呢?
$statusDbObj = new Tracker_Model_DbTable_Status();
$where = $statusDbObj->getAdapter()->quoteInto('tracking_number = ?', $airwaybill_number);
$delete = $statusDbObj->delete($where);
if($delete > 0)
{
// do something
}
else
{
// not deleted
}
这是try catch:
try
{
$statusDbObj = new Tracker_Model_DbTable_Status();
$where = $statusDbObj->getAdapter()->quoteInto('tracking_number = ?', $airwaybill_number);
$delete = $statusDbObj->delete($where);
if($delete > 0)
{
// do something
}
}
catch (Exception $e)
{
// not deleted and print error
}
我是使用try catch的新手
这取决于您要解决的问题:
delete
结果将帮助您检测“预期问题”(即,当您由于条目与where
表达式不匹配而无法删除条目时)。 try
- catch
结构(例如,捕获Zend_Db_Exception
,很可能由delete
方法抛出该异常),则还可以检测到“意外问题”(例如,如果数据库连接失败) )。 如果省略此结构,则最终的异常会弹出给代码调用者,并且您还需要在某个地方解决它们。 希望能有所帮助,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.