2014-07-24 222 views
0

是否可以在一行上獲取更新的值。 ex: 我得到一個名爲'invoice'的表,在這個表中有一個叫'balance'的字段。我對餘額進行了更新,並希望獲得新的平衡值。 是否有可能返回受影響字段的新值?使用PDO連接返回更新值

+0

如果它對您有幫助,您能接受我的答案嗎? –

回答

3

不,您只能得到受影響的行數。如果你想有更新的數據,你必須SELECT它。

BTW數據庫不知道該返回什麼 - 只更新字段?所有的行?整個結果集?

+0

你可以添加一個觸發器,雖然 – Limiter

+0

觸發器是什麼?你需要明確地告訴數據庫你想要數據,它本身不會發送任何東西。 –

+0

你可以設置一個觸發器來更新一列後返回一個值,init? – Limiter

0

沒有這不可能,但你可以做的是返回受影響的行的數量,如果它等於1,則 可以安全地假設新值已在餘額欄中更新,無需返回。

$stmt->execute(array($new_value)); 

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