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 :

Relations conjugales.. (extra) [MCD]


Sujet :

Schéma

  1. #21
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Je voyais plutôt ça lié directement au pays, indépendamment des nationalités des mariés. Si le pays autorise la polygamie ou le mariage homsexuel, n'importe qui peut en profiter en se mariant là-bas, par contre ça ne sera pas forcément reconnu partout. (Mais bon... Je connais pas grand chose en mariage ).

    Je précise juste la logique que j'ai appliqué jusqu'à maintenant dans ce fil. Il y a de grandes chances que ce soit n'importe quoi. ^^

  2. #22
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Effectivement, je pense que la nationalité des mariés n'a rien à voir. Ce qui compte, c'est le pays où est célébré le mariage pour autoriser ou non le mariage homo/polygame.

    D'ailleurs je serais curieux de savoir ce qui se passerait si un français déjà marié en France allait contracter un autre mariage dans un pays autorisant la polygamie !
    Serait-il mis en prison à son retour en France ?

    Je crois que les immigrés qui sont déjà polygame dans leur pays d'origine doivent administrativement désigner quelle unique femme ils reconnaissent comme leur épouse quand ils viennent vivre en France.

    Finalement, Vive la France ! Les choses y sont beaucoup plus simples !

    Quoique l'idée d'épouser des jumelles est fantasmatique !
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #23
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    J'ai fait un rapide schéma d'après ton modèle CinePhil, histoire de mieux comprendre, mais un détail me gêne un peu...

    Citation Envoyé par CinePhil Voir le message
    On peut modéliser une contrainte d'exclusion entre les deux associations "Contracter" pour interdire à une personne de se marier avec elle même.
    Pourquoi utiliser 2 associations "Contracter" plutôt qu'une?

  4. #24
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par bergie Voir le message
    Pourquoi utiliser 2 associations "Contracter" plutôt qu'une?
    Parce que le mariage est contracté par deux personnes. Si on fait une association ternaire, cela entraînera une table associative qui n'est pas utile il me semble dans ce cas précis.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #25
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour à tous,

    Récapitulation du MCD, à ce stade :

    PERSONNES
    - Id_Personne (PK)
    - Nom
    ...

    PAYS
    - Id_Pays (PK)
    - Nom
    - Mariage_Homosexuel (O/N) => valeur, par défaut, en saisie de MARIAGES
    - Type_Mariage (M=Monogame, P=Polygame) => valeur, par défaut, en saisie de MARIAGES
    ...

    NATIONALITES
    - Id_Personne (PK)
    - Id_Pays (PK)
    - Date_Nationalite
    ...

    MARIAGES
    - Id_Conjoint_x (PK)
    - Id_Conjoint_y (PK)
    - Date_Mariage (PK)
    - Date_Mariage_Fin
    - Mariage_Homosexuel (O/N)
    - Type_Mariage (M=Monogame, P=Polygame)
    ...

    RELATIONS
    PERSONNES ---(0,n)---[est marié à]---(0,n) PERSONNES => MARIAGES pour gérer la relation n,n
    PERSONNES ---(1,n)---[a, pour nationalité]---(1,n) PAYS => NATIONALITES pour gérer la relation n,n


    Cahier des charges
    - une personne ne peut pas se marier avec elle-même ;
    => contrainte : Id_Conjoint_x <> Id_Conjoint_y.

    - une personne peut se marier plusieurs fois (avec une personne différente ou pas) ;
    => MCD de base.

    - une personne peut se marier avec une autre personne du même sexe (à terme, peut-être) ;
    => MCD de base (aucune mention de sexe).

    - une personne peut se marier avec plusieurs personnes dans le cadre du même mariage ;
    => MCD de base.

    - l'ordre (la séquence) d'une personne dans le couple est indifférent.
    => trigger : "forçage" Id_Conjoint_x < Id_Conjoint_y (merci pour l'astuce, François).


    Avec tout cela, nous ne devrions pas être trop loin de la "vérité"...

    Par contre, je n'ai pas d'outil graphique pour la modélisation de ce MCD : si une bonne âme pouvait concevoir un joli graphique, le virtuel SI du non moins virtuel gouvernement mondial évoqué dans le post #20, vous en sera reconnaissant.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  6. #26
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Salut,

    Citation Envoyé par CinePhil Voir le message
    Parce que le mariage est contracté par deux personnes. Si on fait une association ternaire, cela entraînera une table associative qui n'est pas utile il me semble dans ce cas précis.
    Ah d'accord, mais comment tu représentes le fait qu'il faut obligatoirement 2 personnes et 1 pays (au niveau conceptuel) ?

    EDIT: Ah bah je suis bête, les cardinalités suffisent...

    D'ailleurs tu n'as pas répondu à mes précédentes questions concernant ton modèle.

    Edit:
    Citation Envoyé par Richard_35 Voir le message
    Par contre, je n'ai pas d'outil graphique pour la modélisation de ce MCD : si une bonne âme pouvait concevoir un joli graphique, le virtuel SI du non moins virtuel gouvernement mondial évoqué dans le post #20, vous en sera reconnaissant.
    Je veux bien essayer de faire ça proprement, mais j'attends les réponses à certaines questions avant. ^^

  7. #27
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Vite fait parce que je n'ai pas le temps, juste sur ça :
    Citation Envoyé par bergie Voir le message
    comment tu représentes le fait qu'il faut obligatoirement 2 personnes et 1 pays (au niveau conceptuel) ?
    Ben justement parce qu'il y a deux associations dans mon modèle entre l'entité Mariage et l'entité Personne et une association entre l'entité Mariage et l'entité Pays !
    Citation Envoyé par CinéPhil
    Mon modèle (sans les contraintes) est le suivant :
    Personne -0,n----Contracter----(conjoint1)-1,1- Mariage -1,1----Situer----0,n- Pays
    |---------------0,n----Contracter----(conjoint2)-1,1-----| |-------0,1----Dater----(1,1)- Fin_mariage
    Les cardinalités 1,1 impliquent que pour un mariage il y a obligatoirement un pays et deux fois une personne.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  8. #28
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Oui je viens de m'en rendre compte
    J'ai édité mon message avant de voir ta réponse ^^

  9. #29
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Bon alors j'ai tenté un schéma.

    @Richard_35 > En prenant en compte les remarques et propositions de CinePhil, le MCD est différent du récapitulatif que tu proposes.

    Nom : mariage.png
Affichages : 77
Taille : 8,2 Ko

    Il reste cependant 2 problèmes il me semble:

    - Un couple peut se marier plusieurs fois sans avoir divorcé.

    - Un mariage ne peut unir que 2 personnes, donc la polygamie pose problème.

    J'ai pensé à mettre "1,N" entre "Contracter2" et "MARIAGE", mais ensuite, la polygamie serait possible quelque soit le pays. Je ne vois pas trop comment modéliser ça du coup...


    En ce qui concerne la contrainte d'exclusion, après un peu de documentation, elle convient bien dans ce cas de figure.

    (FIN MARIAGE est une entité faible mais je n'ai pas pu le représenter)

  10. #30
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    J'ai oublié le PaysC... donc, la table MARIAGES devient :

    MARIAGES
    - Id_Conjoint_x (PK)
    - Id_Conjoint_y (PK)
    - Date_Mariage (PK)
    - Date_Mariage_Fin
    - Mariage_Homosexuel (O/N)
    - Type_Mariage (M=Monogame, P=Polygame)
    - Id_Pays_Mariage
    ...

    Merci pour ton travail, Bergie : pas eu le temps, encore, d'étudier ton schéma.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  11. #31
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par bergie Voir le message
    Bon alors j'ai tenté un schéma.

    @Richard_35 > En prenant en compte les remarques et propositions de CinePhil, le MCD est différent du récapitulatif que tu proposes.

    Nom : mariage.png
Affichages : 77
Taille : 8,2 Ko
    L'association Dater a les cardinalités 0,1 --- (1,1).
    Il n'y pas d'idFinMariage puisque c'est une identification relative.

    Il reste cependant 2 problèmes il me semble:

    - Un couple peut se marier plusieurs fois sans avoir divorcé.
    Avec ce modèle on ne peut faire figurer une contrainte l'empêchant que par une annotation qui se traduira dans la BDD par une contrainte CHECK vérifiant qu'il n'existe pas de mariage sans date de fin pour ce couple.

    - Un mariage ne peut unir que 2 personnes, donc la polygamie pose problème.
    Non. Chaque mariage se fait entre deux personnes mais une personne peut contracter plusieurs mariages en même temps.

    Par contre, je viens de penser à un autre problème à prendre en compte dans les contraintes : Même dans le cas où le mariage polygame est permis, je ne pense pas que les deux membres d'un mariage puissent tous deux avoir contracté un autre mariage ?
    A épouse B
    A épouse C
    => Le polygame est donc A
    Je pense que dans les sociétés polygames, la polygamie ne fonctionne que pour un seul sexe. Dans mon exemple, B et C n'auraient pas le droit de contracter un autre mariage.

    (FIN MARIAGE est une entité faible mais je n'ai pas pu le représenter)
    Quel est ton logiciel de modélisation ? Open Modelsphere, d'après le look du schéma ?

    fsmrel pourrait redonner le message où il indique la manip à faire pour l'identification relative. Tu peux utiliser l'outil de recherche du forum.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  12. #32
    Membre actif
    Étudiant
    Inscrit en
    Avril 2008
    Messages
    311
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 311
    Points : 257
    Points
    257
    Par défaut
    ça se complexifie à fond !

    A épouse B
    B épouse C
    C épouse A
    pas de problème si l'homosexualité est OK

  13. #33
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    L'association Dater a les cardinalités 0,1 --- (1,1).
    Il n'y pas d'idFinMariage puisque c'est une identification relative.
    Ah, en cours on mettait quand même un identifiant, l'identification relative indiquant que ce dernier était dépendant celui de son "père".

    Citation Envoyé par CinePhil Voir le message
    Non. Chaque mariage se fait entre deux personnes mais une personne peut contracter plusieurs mariages en même temps.
    Ah bah oui... ^^

    Citation Envoyé par CinePhil Voir le message
    Par contre, je viens de penser à un autre problème à prendre en compte dans les contraintes : Même dans le cas où le mariage polygame est permis, je ne pense pas que les deux membres d'un mariage puissent tous deux avoir contracté un autre mariage ?
    A épouse B
    A épouse C
    => Le polygame est donc A
    Je pense que dans les sociétés polygames, la polygamie ne fonctionne que pour un seul sexe. Dans mon exemple, B et C n'auraient pas le droit de contracter un autre mariage.
    En effet, ça complique encore la chose.

    Citation Envoyé par CinePhil Voir le message
    Quel est ton logiciel de modélisation ? Open Modelsphere, d'après le look du schéma ?

    fsmrel pourrait redonner le message où il indique la manip à faire pour l'identification relative. Tu peux utiliser l'outil de recherche du forum.
    Merci, je vais chercher ça.

  14. #34
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Citation Envoyé par CinePhil
    Par contre, je viens de penser à un autre problème à prendre en compte dans les contraintes : Même dans le cas où le mariage polygame est permis, je ne pense pas que les deux membres d'un mariage puissent tous deux avoir contracté un autre mariage ?
    A épouse B
    A épouse C
    => Le polygame est donc A
    Je pense que dans les sociétés polygames, la polygamie ne fonctionne que pour un seul sexe. Dans mon exemple, B et C n'auraient pas le droit de contracter un autre mariage.
    ==> très bien vu, Philippe !

    En effet, une personne mariée (société polygame ou pas) ne peut pas se marier dans le cadre d'un autre mariage : cela donne donc une 6ème contrainte qu'il faudra traiter.

    En aparté, voici un article intéressant sur le sujet.

    Cahier des charges
    1- une personne ne peut pas se marier avec elle-même ;
    => contrainte : Id_Conjoint_x <> Id_Conjoint_y.

    2- une personne peut se marier plusieurs fois (avec une personne différente ou pas) ;
    => MCD de base.

    3- une personne peut se marier avec une autre personne du même sexe (à terme, peut-être) ;
    => MCD de base (aucune mention de sexe).

    4- une personne peut se marier avec plusieurs personnes dans le cadre du même mariage ;
    => MCD de base.

    5- l'ordre (la séquence) d'une personne dans le couple est indifférent.
    => trigger : "forçage" Id_Conjoint_x < Id_Conjoint_y (merci pour l'astuce, François).

    6- une personne mariée (société polygame ou pas) ne peut pas se marier dans le cadre d'un autre mariage.
    => je pense que l'on n'échappe pas à un balayage des enregistrements de MARIAGES pour refuser ou non une saisie. Donc, trigger, non ?
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  15. #35
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Voici donc le schéma mis à jour (au niveau des clé primaires et de l'identification relative)

    Nom : mariage.png
Affichages : 162
Taille : 8,4 Ko

    (pour l'identification relative, sous open modelsphere, voir ici)

    En ce qui concerne les contraintes restantes, je n'ai pas de proposition à faire, ça devient trop compliqué pour moi je crois (ou pas modelisable...)

  16. #36
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    4- une personne peut se marier avec plusieurs personnes dans le cadre du même mariage ;

    6- une personne mariée (société polygame ou pas) ne peut pas se marier dans le cadre d'un autre mariage.
    => je pense que l'on n'échappe pas à un balayage des enregistrements de MARIAGES pour refuser ou non une saisie. Donc, trigger, non ?
    Il y a une ambiguïté entre ces deux règles et le schéma auquel nous sommes arrivés avec bergie sur le mot "Mariage".

    On peut les formuler différemment :
    4- une personne peut se marier avec plusieurs personnes dans le cadre du même foyer ;

    6- une personne mariée (société polygame ou pas) ne peut pas se marier dans le cadre d'un autre foyer.

    On sait ce que représente en France, et peut-être ailleurs, la notion de foyer fiscal.
    Exemple traditionnel :
    M. Paul Dupont et Mme Jeanne Dupont, née Durand, dont l'habitation principale est située à telle adresse et qui ont les enfants Isabelle et Pierre.

    On pourrait alors considérer, dans le cadre de cette modélisation des mariages, qu'une personne ne peut appartenir qu'à un seul foyer à une certaine date.

    A épouse B dans le cadre du mariage M1. => Ils constituent alors le foyer F1
    A épouse C dans le cadre du mariage M2 => C est rattachée au foyer F1
    C veut épouser D => impossible car elle fait déjà partie du foyer F1

    C divorce de A => Elle est retirée du foyer F1 et peut alors se marier avec D pour constituer le foyer F2

    On aurait alors le complément de MCD suivant :
    Mariage -1,1----Constituer----1,n- Foyer

    Il faudrait alors un trigger vérifiant que les deux contractants du mariage ne font pas déjà partie de deux foyers différents.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  17. #37
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    On peut les formuler différemment :
    4- une personne peut se marier avec plusieurs personnes dans le cadre du même foyer ;

    6- une personne mariée (société polygame ou pas) ne peut pas se marier dans le cadre d'un autre foyer.
    C'est effectivement plus clair avec la notion de foyer.

    Nom : mariage.png
Affichages : 186
Taille : 9,3 Ko

    D'autres idées? ^^

  18. #38
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Citation Envoyé par Cahier des charges
    4- une personne peut se marier avec plusieurs personnes dans le cadre du même mariage ;
    Citation Envoyé par CinePhil
    Il y a une ambiguïté entre ces deux règles et le schéma auquel nous sommes arrivés avec bergie sur le mot "Mariage".
    C'est dangereux de changer la signification d'une entité en cours de route... à moins que le mot ne corresponde pas à la signification en question : cela semble, effectivement, être le cas. En effet :
    - A peut se marier avec B le 01/01/2011 ;
    - A peut se marier avec C le 01/03/2011.
    mais, comme le mariage du 01/01/2011 n'est pas terminé (pas de date de fin), alors le mariage du 01/03/2011 est "dans le cadre" de celui du 01/01/2011.
    ==> la notion de foyer est donc, réellement, indispensable.


    Une personne, présente dans MARIAGES, avec une Date_Mariage<>null et Date_Mariage_Fin=null fait donc partie d'un "foyer en cours" (notion bien singulière...). En fait, l'entité FOYERS serait une sorte d'entête de l'entité MARIAGES.

    FOYERS
    - Id_Foyer (PK)
    - Date_Creation
    ==> création automatique d'1 foyer à la création du 1er mariage.

    MARIAGES
    - Id_Conjoint_x (PK)
    - Id_Conjoint_y (PK)
    - Date_Mariage (PK)
    - Date_Mariage_Fin
    - Mariage_Homosexuel (O/N)
    - Type_Mariage (M=Monogame, P=Polygame)
    - Id_Pays_Mariage
    - Id_Foyer (attribution automatique du foyer "en cours" pour l'1 des 2 conjoints)
    ...

    Relation (c'est une recopie de ta relation, CinePhil)
    FOYERS ---(1,n)---[a été constitué de/constitue]---(1,1)--- MARIAGES.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  19. #39
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 45
    Points : 58
    Points
    58
    Par défaut
    Salut,

    Juste 2 petites choses en passant.

    Citation Envoyé par Richard_35 Voir le message
    Une personne, présente dans MARIAGES, avec une Date_Mariage<>null et Date_Mariage=null fait donc partie d'un "foyer en cours" (notion bien singulière...). En fait, l'entité FOYERS serait une sorte d'entête de l'entité MARIAGES.
    Je suppose que tu voulais plutôt écrire:
    Date_Mariage<>null et Date_Mariage_Fin=null
    :p

    Mais la fin du mariage, dans le schéma sur lequel nous sommes parti, est représenté par une table.

    Citation Envoyé par Richard_35 Voir le message
    MARIAGES
    - Id_Conjoint_x (PK)
    - Id_Conjoint_y (PK)
    - Date_Mariage (PK)
    - Date_Mariage_Fin
    - Mariage_Homosexuel (O/N)
    - Type_Mariage (M=Monogame, P=Polygame)
    - Id_Pays_Mariage
    - Id_Foyer (attribution automatique du foyer "en cours" pour l'1 des 2 conjoints)
    ...
    A la place de "Type_Mariage (M=Monogame, P=Polygame)", je mettrais "Mariage_Polygame (O/N)".
    Mais bon, c'est un détail...

  20. #40
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour Bergie,

    Citation Envoyé par Bergie
    Je suppose que tu voulais plutôt écrire:
    Date_Mariage<>null et Date_Mariage_Fin=null
    ==> exact : je viens de modifier le post concerné. Merci pour la correction.


    Citation Envoyé par Bergie
    Mais la fin du mariage, dans le schéma sur lequel nous sommes parti, est représenté par une table.
    ==> oui. Mais, je n'ai pas compris si tu as une remarque sur ce sujet ou si tu constates, simplement.


    Citation Envoyé par Bergie
    A la place de "Type_Mariage (M=Monogame, P=Polygame)", je mettrais "Mariage_Polygame (O/N)".
    ==> oui, cela revient au même. Sauf que si, un jour, un mariage de type "trigame" apparaît, nous pourrons ajouter une valeur disponible à ce flag (T=Trigame)... qui peut le plus, peut le moins. Peut-être, cela arrivera-t-il, quand il faudra gérer les unions d'une culture terrienne encore inconue, ou celles d'une culture extra-terrestre. Mais bon, la propabilité reste faible...
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. Mettre en relation les contrôles DBLookUpComboBox et DBGrid
    Par Gendarmette dans le forum Bases de données
    Réponses: 7
    Dernier message: 19/01/2004, 13h16
  2. [Relations] afficher les relations entre 2 tables
    Par dzincou dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 14/01/2004, 17h07
  3. [EJB2.1 Entity] [CMR] Relation One to Many
    Par hamed dans le forum Java EE
    Réponses: 2
    Dernier message: 31/12/2003, 14h26
  4. Réponses: 2
    Dernier message: 26/09/2003, 15h54
  5. Problème avec mes tables de relation...
    Par mmike dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/06/2003, 15h16

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