structure de table

structure de table - SQL/NoSQL - Programmation

Marsh Posté le 26-07-2007 à 13:37:39    

Bonjour,
 
Je ne suis pas très doué pour la BDD donc je vous demande conseil.
 
Le sujet est simple.
 
J'ai des utilisateurs d'un coté et des fichiers de l'autre. Je voudrais pouvoir faire en sorte d'attribuer plusieurs fichiers à un utilisateur et également à l'inverse attribuer plusieurs utilisateurs à un fichier.  
Comme une relation de dépendance :  
-l'utilisateur x possède les fichiers à l'id 1, 2, 4, 10, etc ...
-le fichier x est possèdé par les utilisateurs à l'id 3, 5, 9 etc ...
 
J'ai tout de suite pensé à une table contenant l'id d'utilisateur et l'id de fichier pour effectuer la relation, mais le fait que j'ai des milliers de fichiers et des milliers d'utilisateurs et que chaque utlisateur peut etre en relation avec des milliers de fichiers la table risque d'avoir des millions d'entrées; ca ne gène pas pour la rapidité d'execution des recherche dans cette table par un script php ?
 
Si oui, une autre solution consisterait à placer un champ texte dans la table utilisateur et un champ texte dans la table fichiers, champ texte contenant les id des fichiers/utilisateurs en relation séparé par un caractère. Alors la charge de traitement se reporterait à l'execution du script php devant trier ce fichier texte.
 
Quelle solution est la plus envisageable ?

Reply

Marsh Posté le 26-07-2007 à 13:37:39   

Reply

Marsh Posté le 26-07-2007 à 14:45:36    

Tout dépend de l'utilisation que tu feras des informations,
si tu comptes faire remonter la liste des utilisateurs ayant accès à 1 document, ou l'inverse,
perso je partirais sur 3 tables :
1_utilisateurs
2_documents
3_correspondance

Reply

Marsh Posté le 26-07-2007 à 16:32:36    

Ok donc la premiere proposition que j'ai faite.
 
L'utilisation serait principalement de montrer aux utilisateurs les fichiers qu'ils possèdent sachant qu'on ne pourra jamais leur retirer, ce qui fait que cette liste ne fera que s'etirer; c'est pour ca que j'ai proposé l'idée de champ texte contenant les id des fichiers car le traitement sera leger :
lire les id et lors des ajouts : ajouter à la fin

Reply

Marsh Posté le 26-07-2007 à 16:35:16    

tu finiras pas être limité par la longueur du champs texte... c'est pour ca que je pensais a ce systeme... :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed