私はこれに対する答えを見つけることはできませんでした。それはわかりません。誰でも。すべてが真を返すまで、mysql操作を停止してください
データベース上の複数の操作、例えばを持っている場合:
if(insert_something_to_db($data) == TRUE){
if(delete_something_else_from_db($data2) == TRUE){
if(update_something_related_to_the_others_in_db($data3) == TRUE){
return TRUE;
}
}
} else {
return FALSE;
}
ネストされたクエリのいずれかが失敗した場合は、以前の操作は、データベース内の乱雑なデータで、その結果、締結されているでしょう。それらがすべて成功するかどうかを知るまで、操作の実行を中止することは可能ですか/いくつかのテクニック/ベストプラクティスです。
私は例があります。
人がグループに参加したい場合、彼は 「グループに参加」をクリックする - 通知はデシベルで作成されます。これは、グループオーナーの管理パネルに表示されます。 - グループ所有者は、アプリケーションを拒否/承諾できます。
受諾: - 申請者のユーザーデータは、新しいグループ情報で更新されます。 - グループ管理者に最初に送信された通知が削除されます。 - 申請者に新しい通知が作成され、承認されたことを通知します。
最も外側の条件がfalseを返す場合(ユーザーデータが更新されると仮定します)、実際のデータベースは元のデータを保持しています。最初の更新が終了し、次の更新が行われなかった場合、プロファイルは新しいグループとのリンクを反映するように更新されましたが、グループ管理者領域の通知は消えません。
よろしく デニスあなたはすべてのクエリは、全か無かの動作を保証するために、transactionになりたい
素晴らしいです。ありがとうございました。 – Dennis
歓迎します:-)楽しんでください! –