j'ai 3 tables comme suit :
user(iduser, nom, prenom)
mdp(idmdp,lib_mdp,desc_mdp)
mdp_user(#iduser,#idmdp)
mais j'arrive pas à créer la troisiéme table "mdp_user" dont j'utilise easyphp
j'ai 3 tables comme suit :
user(iduser, nom, prenom)
mdp(idmdp,lib_mdp,desc_mdp)
mdp_user(#iduser,#idmdp)
mais j'arrive pas à créer la troisiéme table "mdp_user" dont j'utilise easyphp
Bonjour,
pourquoi des dièses?
Cordialement,
Code : Sélectionner tout - Visualiser dans une fenêtre à part CREATE TABLE `mdp_user` (`#iduser` integer not null, `#idmdp` integer not null, UNIQUE(`#iduser`))
DaRiaN.
merci bien
Même si les `` permettent de faire fonctionner les #, il serait plus natuel de ne pas les utiliser :
En fait, les # sont une notation pratiquée pour indiquer les clés étrangères, donc ta spec devrait se traduire ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE TABLE mdp_user ( iduser integer NOT NULL, idmdp integer NOT NULL, UNIQUE(iduser) )
Enfin, il est parfaitement inutile de créer trois tables pour ça. Vue ta contrainte UNIQUE indiquant qu'il n'y a qu'un mdp par user, une seule table avec les users et mdp s'impose.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 CREATE TABLE mdp_user ( iduser integer NOT NULL REFERENCES user(iduser), idmdp integer NOT NULL REFERENCES mdp(idmdp), UNIQUE(iduser) )
Partager