ユーザー ID と親友のユーザー ID を保存する BFFs というテーブルがあり、異なるユーザーごとにテーブルの親友を 3 人に制限したいと考えています。
テーブル構造が次の場合を意味します:
リーリー記録は次のとおりです:
リーリーこの場合、ID 3286 のユーザーには、(3286, xyzt) などの新しいレコードを持つことを許可しないでください。
このトリガーを作成しましたが、よくわかりません:
リーリーアサーションまたはトリガーを介してリレーショナル テーブル上でそれを再強化するにはどうすればよいですか?
###ありがとう###
ハイパーキューブの答え (DRI を利用してルールを適用する) に加えて、MIN を使用して LEFT JOIN を実行して、ユーザー ID ごとに 3 つのテーブルから 1、2、または 3 の次のものを取得することもできます。
ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ
ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ ソファ
別の列
リーリーFriendNumber
と外部キー制約を、ちょうど 3 行を含む参照テーブルに追加します。次に、次の内容を追加できます:
リーリーまたは、@gbn が提案したように、次のようにします (列が自動入力されます):
リーリーAsafa は法律を遵守し、メッセージを送信します Asafa は法律を遵守し、メッセージを送信します Asafa は法律を遵守し、メッセージを送信します Asafa は法律を遵守し、メッセージを送信します