我有一条 MySQLDELETE
语句,后跟一条INSERT
语句,以确保给定 ID 的数据集只有一个副本。(我不使用 UPDATE 是有原因的)
问题是我注意到在一个包含 5000 多个条目的数据集中,有 3 个实例没有执行 DELETE 语句,但 INSERT 语句执行了。最终结果是给定 ID 的重复条目。
下面是我的代码。执行失败时,php 脚本将退出并显示错误消息。这一定是我的经验水平。任何想法可能是什么问题?
//delete
$query_delete = "DELETE FROM q1_6_list WHERE q_id = '".mysql_real_escape_string($q[qID])."'";
$result = mysql_query($query_delete) or errorReport("Error in query: $query_delete. ".mysql_error());
//insert
$query_insert = "INSERT INTO q1_6_list (q_id, vehicle, quantity) VALUES";
$result = mysql_query($query_insert) or errorReport("Error in query: $query_insert. ".mysql_error());
if (!$result)
errorReport($result);
编辑
仔细检查后,我注意到我没有立即添加以下代码$result = mysql_query($query_delete)....
if (!$result)
errorReport($result);
这是否也需要捕获所有其他错误消息,或者会mysql_query($query_delete) or errorReport...
捕获所有错误事件?