IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

Objectif : création d'une base de données clients privés


Sujet :

Schéma

  1. #21
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Merci fs! Je crois que tout fonctionne correctement désormais! C'est parfait!

    J'ai un peu de mal pour les requêtes que je ne comprends pas encore bien comment formuler mais ça va rentrer!

  2. #22
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Je cherche à faire la requete suivante :
    "Chercher les organismes qui travaillent avec chaque client, et combien de fois ils travaillent avec chaque client."

    Comment faire, sachant que le role_id des clients est 1, et que les roles des autres organismes va de 2 à 8?

  3. #23
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Par ailleurs, léger problème pour ce type de requête :
    "Afficher le nom des clients, ainsi que leur adresse, pour lesquels les honoraires sont inférieurs à 3000 euros pour au moins une affaire"

    Quand j'affiche ma requête ainsi, ça fonctionne :


    Mais quand j'ajoute la table ville dans les relations, ça ne met plus que les clients dont l'adresse est à Paris et dont l'affaire se trouve à Paris... Pourtant, je souhaiterais que le nom de la ville apparaisse également.


    Comment faire?

  4. #24
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 114
    Points : 31 602
    Points
    31 602
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par NicolasGrabo Voir le message
    Je cherche à faire la requete suivante :
    "Chercher les organismes qui travaillent avec chaque client, et combien de fois ils travaillent avec chaque client."
    Comment faire, sachant que le role_id des clients est 1, et que les roles des autres organismes va de 2 à 8?
    Vous êtes en train de quitter le domaine de la modélisation pour celui de la manipulation des données : il est temps que vous basculiez vers les forums SQL et/ou ACCESS pour poser vos questions. Des as comme Waldar vous aideront, mais commencez par présenter l’ébauche de vos requêtes (sous forme de SELECT SQL dans le cas du forum SQL) en précisant votre SGBD et sa version. Il ne s'agit pas que les autres fassent le travail à votre place...

    Concernant votre question, il y a ambiguïté. Signifie-t-elle : Quels organismes travaillent avec tous les clients ?

    Quoi qu’il en soit, faites comme si vous aviez une table des clients (et des références des affaires dans lesquels ils trempent) et une table des autres organismes (et des références des affaires dans lesquels ils trempent eux aussi). Définissez pour cela une vue (une requête dans le cas d’ACCESS) OrganismesClients et une vue OrganismesNonCLients que vous pourrez joindre sur l’attribut AffaireId.

    Vue OrganismesClients (clients) :




    Vue OrganismesNonClients (organismes non clients) :




    Il devient facile de mettre en relation les clients et les non clients par jointure sur l'attribut AffaireId. Pour le reste : voyez les as...


  5. #25
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Merci fm!

    Tu m'as été d'une grande aide!

  6. #26
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Dans l'entreprise, des débats nous font désormais hésiter entre ces deux modèles ci...





    Laquelle est la bonne et pourquoi?

  7. #27
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 114
    Points : 31 602
    Points
    31 602
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par NicolasGrabo Voir le message
    Laquelle est la bonne et pourquoi?
    A) Si on se limite à une seule adresse pour un organisme, on peut se contenter du 1er modèle. Toutefois, pour éviter les incohérences, il est préférable de mettre en œuvre une table Commune (que pour votre part vous avez nommée Ville, mais ce terme est trop restrictif). En effet, selon votre modèle, rien n’interdit les incohérences du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    OrganismeId    ...    Code Postal    Ville    ... 
         1                  75011        Toulouse 
         2                  75011        Paris
    La modélisation suivante est préférable :




    B) Si un organisme peut avoir plusieurs adresses, alors le modèle évolue ainsi :



    A noter que la table Adresse est identifiée relativement à la table Organisme, d'où la clé composée des deux attributs OrganismeId, AdresseId (dans cet ordre). On considère en l'occurrence qu'une adresse est une propriété multivaluée de l'organisme. En plus, au plan des performances, on s'y retrouve largement.

  8. #28
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    L'attribut role_id doit donc toujours figurer dans la table participation?

  9. #29
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 114
    Points : 31 602
    Points
    31 602
    Billets dans le blog
    16
    Par défaut
    Bien sûr ! Si je n'ai pas fait figurer la table Role, c'est pour avoir une image moins grande à l'affichage, mais cette table existe toujours.

  10. #30
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Par rapport à mes deux propositions en haut, et au placement de la table rôle, y a-t-il une erreur?

  11. #31
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 114
    Points : 31 602
    Points
    31 602
    Billets dans le blog
    16
    Par défaut
    Par rapport à mes deux propositions en haut, et au placement de la table rôle, y a-t-il une erreur ?
    Je n’avais pas vu que la relation qu’avait la table Rôle avec les autres tables différait selon les représentations graphiques. Dans le 1er cas, les tables Organisme et Rôle sont directement en relation, ce qui signifie qu’un organisme joue un rôle et un seul, donc toujours le même quelles que soient ses participations aux affaires.

    Dans le 2e cas, le rôle que joue un organisme peut être différent d’une participation à l’autre.

    Il n'y a pas d'erreur du point de vue de la modélisation, mais vous devez choisir l'option qui vous paraît la plus pertinente (et la justifier dans votre dossier de conception...)

  12. #32
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 22
    Points : 2
    Points
    2
    Par défaut
    Dans le second cas, un organisme peut-il avoir plusieurs rôles différents par participation?
    Si oui, comment faire car j'ai des problèmes de doublons? Quel réglage?

  13. #33
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 114
    Points : 31 602
    Points
    31 602
    Billets dans le blog
    16
    Par défaut
    Dans le second cas, un organisme peut-il avoir plusieurs rôles différents par participation?
    Tout dépend de la composition de la clé.

    1) La clé est composée des deux seuls attributs OrganismeId et AffaireId : pour un organisme et une affaire il ne peut y avoir qu’un rôle.

    2) La clé est composée des trois attributs OrganismeId, AffaireId et RoleId : pour un organisme et une affaire on peut avoir plusieurs rôles, pour un organisme et un rôle on peut avoir plusieurs affaires, etc.

Discussions similaires

  1. [AC-2007] Création d'une base de données Client
    Par IDE dans le forum Modélisation
    Réponses: 3
    Dernier message: 21/11/2010, 09h16
  2. [OpenOffice][Base de données] création d'une base de donnée client
    Par natural mystick dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 18/04/2008, 15h50
  3. création d'une base de données
    Par cyrilng dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 18/05/2005, 14h38
  4. Réponses: 4
    Dernier message: 22/09/2004, 09h17
  5. Création d'une base de données contenant des images
    Par gandalf_le_blanc dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 16/06/2004, 15h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo