MySQL

Fermé
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 - 7 mai 2010 à 09:09
 francis - 7 mai 2010 à 12:00
Bonjour,

Je souhaite créer un dictionnaire Français-Japonais / Japonais-Français, en local pour le moment, en utilisant une base de données mySQL et une interface web local en PHP.

Je gère plutôt bien en PHP et en MySQL mais je suis une buse en méthodologie (Merise, UML), je suis incapable de convertir une base en UML/Merise et réciproquement.

Bref, comme un mot japonais peut avoir plusieurs sens en français et inversement... je pensais à faire deux tables (Français et Japonais) de ce genre:


FRANCAIS -----1,N-------SIGNIFIER-------1,N-------JAPONAIS

Bien qu'une base de données à deux tables puissent paraître un jeu d'enfant pour certains... je suis incapable de traduire les cardinalités en liens MySQL si je puis dire.
Les deux tables seront assez similaire, je n'ai pas encore déterminé les champs... mais ce sera du genre FRANCAS(Cle, Mot,...)

Si quelqu'un peut m'aider, ce serai sympa...

Merci d'avance.



3 réponses

Salut

"Bref, comme un mot japonais peut avoir plusieurs sens en français et inversement... je pensais à faire deux tables (Français et Japonais) de ce genre: "

C'est une relation de n à n : en fait il te faut une 3ieme table qui fasse les relations :

table francais (id, mot)
table japonais(id, mot)
et table on va dire relation (idfrancais,idjaponais)

ainsi, pour avoir toutes les traductions d'un mot, tu te sers de cette table là :

select idjaponais from relation where idfrancais = *iddumotfrancais*;
0
Neliel Messages postés 6146 Date d'inscription jeudi 9 juillet 2009 Statut Contributeur Dernière intervention 20 mars 2017 1 692
7 mai 2010 à 11:53
Merci... et comment on crée des relations entre table...
Pour info, je ne crée pas mes tables avec un requête SQL mais en utilisant PHPMyAdmin... et je ne vois pas d'options de liens intertable...
0
En fait moi non plus je les crée pas (ça s'appelles des clés étrangères, ou foreign key), je le gère juste dans le programme. tu crée la table relation comme une table normale sans clé primaire, avec juste 2 entiers.
en gros tu fais un insert dans une table fr / ou jap, et pour chaque traduction que tu trouve, tu fais un insert dans l'autre table (jap ou fr) si il n'existe pas déjà, et tu fais un insert entre ces 2 id dans la table relation
0