私の MSSQL DB 設計は次のとおりです。
画像を含む 1 つのテーブル、image_id = PK ビデオを含む 1 つのテーブル、video_id = PK コメントを含む 1 つのテーブル、comment_id = PK、および親と一意に一致する 2 つのフィールド:親 (画像またはビデオのいずれか)。
カスケード削除を追加して、画像を削除すると、一致するコメントが自動的に削除されるようにするにはどうすればよいImages.image_id = Comments.item_id AND Comments.item_type = 'image'
ですか? ご覧のとおり、これを機能させるには、アイテム タイプとitem_id
、別のコメントが同じ属性に存在する可能性があるため、item_id
両方item_type
を指定する必要があります。