[英]Update table if other table update is successful
僅當成功更新table1時,才如何更新以下代碼中的table2?
$sql="update table1 set col1='abc' where col2='1'";
$result=mysql_query($sql);
if(that is success)
{
$sql="update table2 set col1='cde' where col2='1'";
$result=mysql_query($sql);
}
請參見mysql_affected_rows()
函數,該函數將返回剛剛更新的行數。 另外,請嘗試避免使用支持mysqli_ *或PDO的mysql_ *函數,因為它們已被棄用。
首先,強烈建議不要使用mysql_*
函數,因為從PHP mysql_*
開始不推薦使用它們。
您可以直接使用$result
變量進行檢查
$result = mysql_query($sql);
if (!$result) {
die('Update failed: ' . mysql_error());
} else {
$sql="update table2 set col1='cde' where col2='1'";
$result=mysql_query($sql);
}
如果上面的查詢成功完成,則$result
變量的數字將為$result
的數字為1,否則它將具有另一個值,因此您可以像這樣簡單地對其進行測試
if($result == 1)
{
//Your second update result
}
試試這個,告訴我結果:)
手冊指出,如果更新有效,則更新的返回值為true,否則為false,因此您可以繼續檢查$return
的值以查看更新是否有效。
不要只用$結果作為它永遠是只要真正為查詢didnt導致錯誤。 如果Where子句沒有命中,則不會更新任何內容,也不會引起錯誤。 因此結果仍然是正確的。
根據Alex的建議使用mysql_affected_rows,以了解已更新了多少條記錄。
if ($result && mysql_affected_rows() )
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.