Product、ProductType、 と呼ばれる 3 つのエンティティがありProductCategoryます。
、、の 3ProductType種類があるとしましょう。BookMusicVideo
ProductCategory、、、の3 つの異なるものがありBookます。FictionNovelTechnical
、、、ProductCategoryの3MusicつRockの異なるJazzPop
そして、3 つProductCategoryの異なる for Video: Fiction, Comic, がありDramaます。
AProductには aProductTypeがあり、多くProductCategoryの 's を持つことができます。しかし、そのProductCategoryは と一致する必要がありProductTypeます。たとえば、 が の場合、ProductType、、およびasBookのみを使用できます。FictionNovelTechnicalProductCategory
アプリケーションコードやトリガーなどを使用せずに、この制限でこのスキーマをモデル化することは可能ですか (つまり、ProductCategoryaProductはその と一致する必要がありProductTypeます)。テーブル、外部キーなどを使用するだけです。
これをどのようにモデル化しますか?