Doit t'on grouper tous les utilisateur dans la même table ?

Doit t'on grouper tous les utilisateur dans la même table ? - SQL/NoSQL - Programmation

Marsh Posté le 04-06-2004 à 17:15:38    

Bonjour, j'ai un petit problème conceptuel sur une base de données. J'ai actuellement une table utilisateur qui contiens des employés, des modérateurs et des clients. Je les ais regroupé en une table car il possède des caractéristiques communes comme leur civilité, leur nom, leur prénom. Je les identifie dans cette table grâce à un champs fonction qui prend sois client, soit modérateur soit employé comme valeur.
 
Voilà donc le problème :
J'ai d'autres tables comme par exemple le niveau d'expérience, la mailing liste, les adresses, qui sont relié a la table utilisateur mais qui ne sont pas en relation avec tous les utilisateurs. Un employé ne peut par exemple pas être inscrit dans la table de la mailing liste, un client ne peut pas être dans la table des fiches de paie, un modérateur n'a pas d'adresse etc. pensez vous donc que je doivent grouper tous ces utilisateur comme je le fait dans une table et les distinguer par un champ type, ou alors séparer en 3 tables, employé, clients, modérateurs ?
Si je prend la deuxième option je vais devoir dupliquer les champs civilité, nom, prénom... ce n'est pas mal ?
 
Voilà je prie pour que quelqu'un me comprenne et vous remercie d'avance.

Reply

Marsh Posté le 04-06-2004 à 17:15:38   

Reply

Marsh Posté le 04-06-2004 à 17:58:15    

je pense que tu dois les regrouper sur une seul table apres tu gere les exceptions sur d'autre table en prenant la clé des utilisateurs sur la tables des exception.

Reply

Marsh Posté le 04-06-2004 à 20:04:09    

Berceker United a écrit :

je pense que tu dois les regrouper sur une seul table apres tu gere les exceptions sur d'autre table en prenant la clé des utilisateurs sur la tables des exception.


J'aurais proposé cette solution aussi

Reply

Marsh Posté le 04-06-2004 à 23:53:37    

Berceker United a écrit :

je pense que tu dois les regrouper sur une seul table apres tu gere les exceptions sur d'autre table en prenant la clé des utilisateurs sur la tables des exception.


D'accord, je pensais les regrouper aussi. Par contre qu'appele tu "table des exceptions" ?

Reply

Marsh Posté le 07-06-2004 à 11:24:51    

Petit up :)

Reply

Marsh Posté le 07-06-2004 à 12:09:44    

Les exceptions auxquels ils pensent sont basée sur un identificateur de type (employé, client, ...) qu'aurait chaque personne. En fonction de ce type, une personne pourrait ou non être linkée vers une table 'fiche de paye'.
 
Une autre solution, plus élégante à mon gout, si tu es sûr qu'une personne ne passera jamais d'un état à un autre (client, emplaoyé, manager) serait d'utiliser un ORDBMS qui permettrait d'avoir un squellette global et des tables qui héritent de ce squelette.

Reply

Marsh Posté le 16-06-2004 à 01:06:16    


Je te conseil de regarder a quoi ça ressemble un model de données.  
C'est une sorte de diagrame de base de données avec les relations.

Reply

Sujets relatifs:

Leave a Replay

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