當(dāng)設(shè)置money字段時(shí),一直報(bào)錯(cuò)執(zhí)行語句返回false,后來改成salary能夠成功,但是反復(fù)兩次執(zhí)行后又開始緩慢執(zhí)行,最后還是執(zhí)行語句報(bào)錯(cuò)返回false
<?php
header("content-type:text/html;charset=utf-8");
try{
$options = array(PDO::ATTR_AUTOCOMMIT, 0); //關(guān)閉事務(wù)的自動(dòng)提交
$dbh = new PDO('mysql:host=localhost;dbname=test', 'root', '123456');
var_dump($dbh->inTransaction());
//開啟事務(wù)
$dbh->beginTransaction();
var_dump($dbh->inTransaction());
$sql = "UPDATE userAccount SET salary=salary-1000 WHERE username='king'";
$res1 = $dbh->exec($sql);
var_dump($res1);
if($res1 == 0){
throw new PDOException('king 轉(zhuǎn)賬失??!');
}
$res2 = $dbh->exec("UPDATE userAccount SET salary=salary+1000 WHERE username='imooc'");
if($res2 == 0){
throw new PDOException('imooc 接收失??!');
}
$dbh->commit();
}catch(PDOException $e){
//回滾事務(wù)
$dbh->rollBack();
echo $e->getMessage();
}
2017-11-15
我把你的代碼復(fù)制了一下,在我的電腦上并沒有出現(xiàn)問題