我正在使用PDO插入記錄(mysql和php)$stmt->bindParam(':field1', $field1, PDO::PARAM_STR);$stmt->bindParam(':field2', $field2, PDO::PARAM_STR);$stmt->execute();是否有辦法知道是否成功插入記錄,例如是否由于重復(fù)記錄而未插入記錄?編輯:當(dāng)然,我可以查看數(shù)據(jù)庫,但是我的意思是程序反饋。
3 回答

呼啦一陣風(fēng)
TA貢獻(xiàn)1802條經(jīng)驗 獲得超6個贊
PDOStatement->execute()成功返回true。還有PDOStatement->errorCode(),你可以檢查錯誤。

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗 獲得超9個贊
如果使用與當(dāng)前數(shù)據(jù)庫記錄匹配的值執(zhí)行更新查詢,$stmt->rowCount()則將返回,0因為沒有受影響的行。如果您if( rowCount() == 1 )要測試成功,您會認(rèn)為更新沒有失敗,但是值已經(jīng)在數(shù)據(jù)庫中,因此失敗了,因此沒有任何變化。
$stmt->execute();
if( $stmt ) return "success";
當(dāng)我嘗試更新具有唯一鍵字段被違反的記錄時,這對我不起作用。該查詢返回成功,但另一個查詢返回舊的字段值。
添加回答
舉報
0/150
提交
取消