2010-11-12 4 views
0

Je ne sais pas comment concevoir les DBMS pour l'exigence suivante:conception SGBD pour les annonces comme site

pour un site comme publicité il y a un tas de catégories.

Chaque catégorie a des sous-catégories optionnelles. Chaque sous-catégorie peut avoir des sous-catégories optionnelles ... et ainsi de suite. En fonction de chaque catégorie (l'utilisateur a sélectionné pour rechercher) il y aura des critères de recherche qui sont applicables uniquement à cette catégorie, par exemple:

si l'utilisateur a choisi la catégorie Autos il y aura les critères de recherche suivants: faire, modèle, première inscription, type de carburant, mais si elle choisit la catégorie Appartements il y aura les critères de recherche suivants: 2 chambres, 3 chambres, privé, agence . J'espère que je l'ai expliqué aussi simple que possible.

+1

Ceci est une très large, à la limite de large pour être question utile. Je sais que c'est difficile à entendre mais vous devriez probablement prendre un livre sur les bases de données pour les débutants. C'est vraiment pour le mieux. – Dlongnecker

Répondre

0
table ad [ad_id, category_id, {other fields}] 
table category [category_id, name, parent_category_id(default=0)] 

une catégorie peut avoir une catégorie parente afin que vous puissiez les décortiquer pour toujours chaque annonce a une catégorie de départ, si cette catégorie a des enfants, puis obtenir ceux-ci, si elles ont des enfants alors obtenir les ad infinitum

1

Cela signifie qu'il faut manipuler les données hiérarchiques afin de choisir parmi de nombreux modèles, chacun avec ses limites et ses avantages.

Je recommande de lire http://articles.sitepoint.com/article/hierarchical-data-database avant de commencer à concevoir votre schéma. Pour mes projets, j'ai utilisé l'approche de la liste d'adjacence parce que c'est plus simple à comprendre, mais quand vous avez besoin de l'interroger, tout devient difficile alors peut-être qu'un ensemble imbriqué serait meilleur.

MySql semble recommander emboîtées mis http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/

Questions connexes