2012-07-17 58 views
0

以下代碼正確更新表,但它也會返回一個異常。任何想法可能發生在這裏?MySQL查詢有效,但PHP返回異常:errorinfo:null

public function updateThis($aaa){ 
try 
{ 
    $success = false; 

    $query = " 
     UPDATE this_table 
     SET thing = '0' 
     WHERE aaa = :aaa"; 

    $stmt = $this->conn->prepare($query); 

    $stmt->bindParam(':aaa', $aaa); 

    $stmt->execute(); 

    if($this->conn->commit()) 
     $success = true; 

    return $success; 
} 
catch(Exception $e) 
{ 
    return $e; 
} 
} 
+1

'$ e-> getMessage()'說什麼? – drew010 2012-07-17 00:06:04

+0

@ drew010它說:「drew010是一個傳說,給男人一分。」 其實,它說「沒有活動的交易」,我回去並添加了'$ this-> conn-> beginTransaction(); '它現在可以工作.. – gatzkerob 2012-07-17 00:12:38

+0

我是否還需要這一行更新的事務? – gatzkerob 2012-07-17 00:15:22

回答

1

當您使用PDO,自動提交是在默認情況下,除非您特別使用Begin Transaction將其關閉。我無法在你的連接中看到它,所以你可能試圖提交一個已經被自動提交的事務?