InnoDB エンジンを使用して、特に a (int) と b (string) の 2 つのフィールドを持つ MySQL テーブルを取得しました。
b の特定の値がテーブルに任意の回数表示されるように構造化したいのですが、表示されるたびに常に同じ値の a で表示される必要があります。つまり、私のテーブルが次のようになっているとします。
(a,b)
(1,'foo')
(2,'bar')
(2,'bar')
(2,'baz')
(1,'foo')、(2,'bar')、または (2,'qux') をテーブルに正常に挿入できるはずですが、(2,'foo')、(1,' bar') または (1,'baz') は、b のこれらの文字列値が表示されるときは常に a の同じ値で表示されるため、失敗するはずです。
これを効率的に行う方法はありますか?私はトランザクションで遊んでいますSELECT ... FOR UPDATE
が、運がありません。テーブル構造が間違っていますか?