我正在使用 Zend,我需要检查数据库中的一行是否已经存在(一个简单的解决方案来消除我遇到的重复键错误)。我尝试了几件事,但似乎没有任何效果......(例如Zend_Validate_Db_NoRecordExists方法)
所以我编写了以下代码,我想知道这是否是一种有效的方法,或者我是否应该以不同的方式做事:
在模型中:
$where = $condition = array(
'user_id = ' . $user_id,
'page_id = ' . $page_id
);
$check = $this->fetchRow($where);
if(count($check) > 0) {
return null;
}else{
// Here I create a new row, fill it with data, save and return it.
}
然后在我看来:
if($this->result != null) { /* do stuff */ }else{ /* do other stuff */ }
它确实有效,但似乎需要更多时间(呃,因为额外的查询),我有点不确定我是否应该坚持这个..
欢迎任何建议:)