Deux clés primaires

widi70 Messages postés 679 Statut Membre -  
widi70 Messages postés 679 Statut Membre -
Bonjour je suppose mes questions un peu bête mais j'aimerais être sur.

Si dans ma base de donnée je dit que:
idproduit -> primary key
idfamille -> primary key

Je vais bien pouvoir créer des couples tels que
idproduit - idfamille
1 - 2
2 - 2
2 - 3
1 - 3

non?
Si oui comment je fait pour mettre deux clef primaire dans ma table sous phpmysql.
Ou comment vérifie t-on les clefs car lorsque j'insère deux idproduits avec 2 idfamille différentes ben ça ne fonctionne pas, il me dit #1062 - Duplicate entry '405020-16' for key 'PRIMARY'

Car dans ma table j'ai selectionné idproduit et idfamille puis j'ai cliquer sur la petite clé
il m'a afficher
ALTER TABLE `produit` DROP PRIMARY KEY ,
ADD PRIMARY KEY ( `IdProduit` , `IdFamille` ) ;

c'est que c'est bon non?

Enfin merci de votre aide par avance
A voir également:

6 réponses

Sandriine Messages postés 1400 Statut Membre 283
 
Normalement, tu as 2 tables :
Produit (IdProduit,IdFamille)
Famille(IdFamille, NomFamille)

Ta table Produit a une seule clé primaire : Id Produit.
L'attribut "IdFamille" dans la table Produit est une clé étrangère qui se réfère à IdFamille de la table Famille.
0
widi70 Messages postés 679 Statut Membre 65
 
oui oui alors j'ai du mal m'expliquer...
j'ai une table famille
idFamille -> primary key
designationFamille

et une table produit avec
idProduit-> primary key
idFamille
designationProduit

Enfaite ce que j'aimerais faire c'est que dans ma table produit je puisse avoir deux fois le même produits avec une famille différente, bien entendu pour l'instant ce n'est pas le cas puisque une clés primaire ne paut pas être double.
Donc je supposait que pour faire ça il fallait que idProduit et idFamille soit des clé primaire dans la table produit.

Donc voila comment je peut faire?
0
Sandriine Messages postés 1400 Statut Membre 283
 
Si Un produit peut avoir plusieurs familles et que une famille peut avoir plusieurs produit, alors il te faut une autre table entre les deux qui a effectivement 2 clés primaires.
0
widi70 Messages postés 679 Statut Membre 65
 
et je ne peut pas faire ça dans ma table produits?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sandriine Messages postés 1400 Statut Membre 283
 
Non c'est impossible d'avoir plusieurs produits avec un même identifiant dans ta table Produit telle que tu l'a là.
C'est la méthode MERISE.
0
widi70 Messages postés 679 Statut Membre 65
 
ok ok ben merci bcp je vais faire comme ça
0