誰かが作成したこのスクリプトを持っていて、それを調べたところ、安全かどうかわからないものが見つかりました。
トランザクション内では、2 つの異なるテーブルに 2 つの連続した挿入があり、どちらも自動インクリメントされた主キーを持ちます。それらは同じであると想定されています (最初の挿入から生成された主キー = 2 番目の挿入から生成された主キー)。
理由は聞かないでください。それは、スクリプトがどのように作成されたかにすぎません。
私はトランザクションに不慣れで、ここに同時実行の問題があるかどうかはわかりません。別のスレッドが同時に実行され、最終的に次のようなキーが生成される可能性について考えています。
Thread #1: Table_A ID: 3 Table_B ID: 4
Thread #2: Table_A ID: 4 Table_B ID: 3
トランザクションがこれを防げないことは確かです (今日初めてトランザクション関連のドキュメントしか用意できませんでした)。
ありがとう!