は、これらのテーブルを検討:SQLクロステーブル制約が
今BOXES
box_id int
box_type enum('regular', 'special')
ITEMS
item_id int
item_type enum('regular', 'special')
item_box int (foreign key referencing box_id)
を、唯一のITEM_TYPEを持つアイテムspecial
がBOX_TYPE special
またはITEM_TYPE regular
の項目だけでボックスに属していることを可能にする制約を作成するにはどのような方法がありますbox_type special
のボックスに属していますか?
ありがとうございます。
申し訳ありませんが、私は逆も行うことができるように指定しておくべきです(つまり、「特殊」を「通常」にすることのみ許可します)。これは外部キーの制約では機能しませんタイプについては、私は思っていません。 – user1123312