zend framework修改如何判断当前记录有没有被修改

黑曼巴 发布于 2014/12/04 15:31
阅读 176
收藏 0
PHP

如下是官方手册上给出的代码示例

class RoundTable extends Zend_Db_Table {}

$table = new RoundTable();
$db = $table->getAdapter();
$set = array(
    'favorite_color' => 'yellow',
)
$where = $db->quoteInto('first_name = ?', 'Robin');
$rows_affected = $table->update($set, $where);



那么问题来了

当修改一条记录的时候 如果当前提交的表单没有被修改的时候 也就是$set变量里的值没有发生变化的时候

返回的$rows_affected结果为0  所以用这个返回结果来判断执行update是否成功就会出问题(用事务的时候 如果这个表的数据没改变其他表的数据改变了 也会提交不了),要如何解决?

加载中
0
matthewrod
matthewrod

很多年没用过zend framework了。

通过程序控制啊,当你$set值没有发生变化的时候,你就不去update。

用事务意思就是,我想多条sql一起执行,要么都成功,要么都失败。执行update数据没有改变,也算一种失败吧。

返回顶部
顶部