返回带有PDO连接的更新值


Return updated value with PDO connection

是否可以获得一行的更新值?例:我得到一个名为"发票"的表,在这个表中有一个名为"余额"的字段。我更新了balance,我想要得到balance的新值。是否有可能返回受影响字段的新值?

不,您只能获得受影响的行数。如果你想拥有更新的数据,你必须将其SELECT

BTW数据库不知道要返回什么-只有更新的字段?所有行吗?整个结果集吗?

不,这是不可能的,但你可以做的是返回受影响的行数,如果它等于1,然后可以放心地假设新值已经在您的balance字段中更新了,不需要返回它。

$stmt->execute(array($new_value));
if($stmt->rowCount()==1){
     echo 'new Balance is = $'.$new_value;
}else{
     echo 'no row affected, no new value';
}