|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Mohamed Belhadj Inscription : juin 2010 Messages : 12 ![]() |
Bonjour,
Je débute avec mysql et j'ai un petit problème avec les clés étrangères. j'ai les tables personnes physiques, personnes morales et biens. un bien doit être fourni soit par une personne physique soit par une personne morale. Il ne peut pas être fourni par les deux à la fois. Mon problème c'est que après la modélisation du problème et la génération du code sql, j'ai deux contraintes de clé étrangère une avec les personnes physiques et autres avec les personnes morales et quand je veux remplir la table biens si je choisi l'id d'une personne physique comme fournisseur il affiche une erreur en me disant que la contrainte de clé étrangère sur la table personnes morales n'est pas satisfaite et vice versa. Comment je peux faire pour dire que si une des contraintes est satisfaite l'autre peut ne pas l'être. |
|
|
00
|
|
|
#2 |
![]() ![]() |
Il faut faire une généralisation des personnes et associer les biens aux personnes et pas aux personnes physiques ou aux personnes morales.
MCD : personne_physique -(1,1)----Etre----0,1- personne -0,n----Fournir----1,1- bien personne_morale -(1,1)----Etre----0,1----------| Tables : personne_prs (prs_id, prs_nom...) personne_physique_pph (pph_id_personne, pph_prenom...) personne_morale_pmr (pmr_id_personne, pmr_siret...) bien_bin (bin_id, bin_id_fournisseur, bin_nom...)
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Mohamed Belhadj Inscription : juin 2010 Messages : 12 ![]() |
Citation:
|
|
|
|
00
|
|
|
#4 | ||
![]() ![]() |
Citation:
Citation:
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#5 | |
|
Invité de passage
![]() Mohamed Belhadj Inscription : juin 2010 Messages : 12 ![]() |
Citation:
|
|
|
|
00
|
|
|
#6 | ||||||||
![]() ![]() |
Citation:
Je reprends la structure que j'avais donnée : Citation:
Code :
Code :
Citation:
Citation:
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||||||||
|
00
|
|
|
#7 |
|
Invité de passage
![]() Mohamed Belhadj Inscription : juin 2010 Messages : 12 ![]() |
OK je vais essayer, merci beaucoup.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com