Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Schéma de données [ Autre / Divers ] (MadM@tt)

mercredi 14 novembre 2007 à 22:27:53 | Schéma de données

MadM@tt

Membre Club
Bonjour à tous,
J'aurais besoin de votre avis au niveau de la conception d'une de mes tables.

J'ai des sites à référencer dans un annuaire.
J'ai une table Sites et une table Categories.

La ou est le problème : un site peut être dans un nombre variable de catégories...

Comment me conseillerez vous de faire : stocker les liens Sites-Categories dans une nouvelle table (qui sera surement immense, et ça ralentira tout non ?) ou alors stocker les numéros des catégories dans la table Sites (dans un champ VarChar par exemple, séparés par des virgules).


Merci infiniment si vous pouvez me donner un conseil

- MadMatt -

 www.choisir-une-entreprise.com


mercredi 14 novembre 2007 à 22:38:26 | Re : Schéma de données

nhervagault

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,

La premiere solution est la mieux adaptée, pour gérer ton probleme.
Ne t'inquite pas pour les performances, cette méthode est la meilleure.
Les bases sql qont conçues pour gérer, les jointures de tables.

NB : par exemple, comment tu ferais pour avoir les sites d'une catégorie.
Pour faire un nuage de tags  par exemple, solution 1 = performante, solution 2 = cata au niveau perf.

Ca ne ser à rien de reinventé la roue, à moins que c'est vraiement utile?

Bon courage.

mercredi 14 novembre 2007 à 22:40:12 | Re : Schéma de données

MadM@tt

Membre Club
Ok merci beaucoup c'est parfait, j'avais besoin d'une réponse claire ^^

A vrai dire je crois que c'est les grosses bases de données qui me font peur héhé

Bonne soirée

- MadMatt -

 www.choisir-une-entreprise.com


mercredi 14 novembre 2007 à 22:47:43 | Re : Schéma de données

pneau

Membre Club
Réponse acceptée !
salut,
je pense qu'il est préférable pour toi de créer une table te permettant
de créer le lien entre tes sites et tes catégories.
ensuite, en positionnant des index je ne pense pas que cela soit plus long que d'avoir un champ varchar contenant toutes les catégories.
en effet, dans ce dernier cas, si tu dois récupérer toutes les catégories d'un site et afficher leur libellé (par exemple) tu devras faire les opérations suivantes :
- select listecategorie from tablesite where site = numsite
- effectuer une routine de découpage de l'information pour récupérer les codes catégories de manière unitaire
- boucler sur ces catégories pour aller chercher l'info du libellé

tout cela nécessite du temps de process... de plus, tu n'aura pas la possibilité de gérer une contrainte d'intégrité de type Foreign Key entre Site et catégorie.
ce qui signifie que lors de la suppression d'une catégorie, tu ne pourras pas savoir si un site lui appartient... a moins de le faire manuellement... et la aussi, cela peut etre long...

alors que si tu gère une table de lien, en une requete tu pourras avoir le code site, la catégorie et le libellé de la catégorie .
ex :
Select TableLien.CodeSite, TableLien.CodeCategorie, TableSite.LibelleSite, TableCategorie.LibelleCategorie
From TableLien
Inner Join TableSite On TableLien.CodeSite = TableSite.CodeSite
Inner Join TableCategorie.CodeCategorie = TableCategorie.CodeCategorie

d'autre part tu pourras gérer tes contraintes d'intégrité...

voilà mon avis...



Pat

 Don't Worry , Be Happy



Cette discussion est classé dans : table, données, sites, schéma, categories


Répondre à ce message

Sujets en rapport avec ce message

Base de données MSDE [ par moneyboss ] Bonjour, Pour des besoins professionnels, je vais utiliser MSDE mais je ne connais pas ce SGBD. 1 >Je voudrais savoir s'il existe de la doc à téléch Récupération de données des tables listés dans un autre table... [ par killysui ] Bonjour!!!J'ai un petit soucis...J'ai une base de données contenant une table Toto(Id_Toto, Toto, Nom_Table)qui contient presque toutes la liste des a Import de données depuis un fichier Excel [ par BUZZ2K ] Bonjour,Afin d'allimenter ma base de donnees (une seule table en fait), je dispose d'un fichiers excel contenant les informations voulues.J'aurai aime Table produit. Un produit a plusieurs prix [ par Cyru_s ] Bonjour, Je débute avec les bases de données. Je souhaite faire une base de données de matériel avec mysql. La table produit ressemblera un peu à cell Lien Oracle-Mysql [ par ThomCg38 ] Bonjour, je voudrais savoir comment faire un lien "direct" et si possible instantané entre une table Oracle et un table Mysql. Je m'explique : je po Table lock [ par Pat35 ] Bonjour,J'ai un problème de lock sur une table.Mon architecture est la suivante : - Une table de données avec des triggers qui enregistrent les PK des synchronisation sql server [ par gzitoun ] Bonjour,J'aimerais beaucoup recevoir un conseil sur un point concernant notre synchronisation s'il vous plait (methode rda, synchro pda/serveur, SQ ibdata1 ne se vide pas quand on supprime une table [ par globule ] Bonjour, J'ai fait un programme en VB6 qui tourne avec MySQL 5 innodb (mysql essential pour windows) Je viens de me rendre compte que lorsque j'ef Inserer des données [ par JALEO WAHRANI ] Bonjour à tous,je souhaiterais inserer des données dans 2 tables à la fois.On a d'un côté la table     t_personnes(id, nom, prenom, no_insee)et de l'a arborescence [ par frbos ] Bonjour J'ai une table contenant des "CATEGORIES" de la forme : ID | nom_categorie | IDParent J'ai donc des categories, sous-categories, sous-so


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,234 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.