私は2つのテーブルを持っています:details
そしてProduct
両方のテーブルにフィールドがありますuser_id
。これはテーブル順序の主キーであり、テーブル Product で外部キーを作成しました。次のクエリを実行します。最初、テーブルには 2 つのレコードがuser_id=11
ありuser_id=12
、次のスクリプトを実行しました。
// making the database connection
$db2=mysql_connect("localhost","root","");
mysql_select_db("my_requests",$db2);
$query=mysql_query("SELECT details.*,product.* FROM details INNER JOIN product ON details.user_id = product.user_id");
while($row=mysql_fetch_array($query)){
$id=$row['user_id'];
echo "$id";
$query1=mysql_query("DELETE FROM details WHERE details.user_id=$id");
$query2=mysql_query("DELETE FROM product WHERE product.user_id=$id");
}
実行すると、user_id=12 のレコードが削除されました。もう一度実行しようとしても、何もエコーされず、残りのレコードも削除されませんでした。
修正してください。下手な英語で申し訳ありません。
ループの最後にこれを印刷しました:
printf("削除されたレコード: %d\n", mysql_affected_rows());
何も表示されませんでした