[請益] transaction如何寫?
小弟目前正在學習mysql的transaction的寫法,
我的程式碼如下:
function qnr($qstring) {
$this->dbh->beginTransaction();
try{
$rs = $this->dbh->prepare($qstring);
if(!$rs->execute())
{
echo 'Error!: ' . $qstring . '<br />';
exit;
}
$this->dbh->commit();
}catch (PDOException $e) {
$this->dbh->rollBack();
echo 'Error!: ' . $e->getMessage() . '<br />';
exit;
}
}
其中之所以會有$this,是因為這個function寫在一個class裡面。
我有試著帶入一段錯誤的$qstring去執行(把insert寫成inser),
不過執行結果卻沒有echo出Error,而是沒有任何反應。
我想請問大大們,我這樣寫的順序是正確的嗎?
還有我那段if(!$rs->execute())的判斷是從網路上學來的,
我覺得應該有更正式的寫法,不知道有沒有?
我會去學transaction是因為有客戶的需求,
他要求程式能在資料儲存之後計算出「儲存成功」與「儲存失敗」的次數。
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.165.33.44
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1421651584.A.B72.html
推
01/19 15:27, , 1F
01/19 15:27, 1F
推
01/19 21:01, , 2F
01/19 21:01, 2F
→
01/19 21:01, , 3F
01/19 21:01, 3F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章