同時エントリーが多い大会を実施しています。私はいくつかのユーザー データを収集しており、それをエントリと呼ばれる 1 つのテーブルに入れています。discountCodes というテーブルに、事前に生成された一意の割引コードの別のテーブルがあります。次に、各エントリに 1 つ割り当てます。私は、discountCodes テーブルにエントリ ID を入れることでこれを行うと考えました。
多くの同時ユーザーが存在する可能性があるため、割り当てられていない最初の行を選択し、その行にエントリ ID を割り当てる必要があると思います。割り当てられていない行を選択してからエントリ ID を追加するまでの間に、別のスレッドが同じ行を見つけられないことを確認する必要があります。
行が 2 回割り当てられないようにする最善の方法は何ですか?