Je conçois une base de données de produits où les produits peuvent avoir des attributs très différents selon leur type, mais les attributs sont fixes pour chaque type et les types ne sont pas gérables du tout. Par exemple:Conception de base de données: objets avec différents attributs
magazine: titre, ISSUE_NUMBER, pages, copies, close_date, RELEASE_DATE
WEB_SITE: nom, bande passante, frappe, date_from, date_to
Je veux utiliser InnoDB et faire respecter l'intégrité de la base de données autant que le permet le moteur. Quelle est la méthode recommandée pour gérer cela?
Je déteste ces dessins où les tables ont 100 colonnes et la plupart des valeurs sont NULL si je pensais à quelque chose comme ceci:
product_type
============
product_type_id INT
product_type_name VARCHAR
product
=======
product_id INT
product_name VARCHAR
product_type_id INT -> Foreign key to product_type.product_type_id
valid_since DATETIME
valid_to DATETIME
magazine
========
magazine_id INT
title VARCHAR
product_id INT -> Foreign key to product.product_id
issue_number INT
pages INT
copies INT
close_date DATETIME
release_date DATETIME
web_site
========
web_site_id INT
name VARCHAR
product_id INT -> Foreign key to product.product_id
bandwidth INT
hits INT
date_from DATETIME
date_to DATETIME
Ce peut gérer la suppression des produits mais ... en cascade, je suis pas convaincu ...
Belle vue d'ensemble de trois conceptions possibles, merci. Toutes les réponses étaient excellentes mais je ne peux en choisir qu'une: <:-) ' –