La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  PHP / MySQL
(Modérateurs: Shain, Jey, erwinol, Lilian, lauryv, ToToMaStEr)
  [résolu] base de données relationnelle ou modèle de données relationnel
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: [résolu] base de données relationnelle ou modèle de données relationnel  (Lu 845 fois)
[résolu] base de données relationnelle ou modèle de données relationnel
« sur: le 07-06-2011 a 18:51:12 »
aspkiddy
Membre récent
*

Hors-Ligne

Messages: 17





Voir le Profil    E-Mail
Répondre avec citation

Bonjour,

Je cherche des informations pratiques sur base de données relationnelle :
Les avantages et les inconvénients d'avoir une base de données relationnelle?
Est-ce que peut-on avoir une base de données relationnelle avec MySql? Est-ce qu’on peut la monter sous PhpMySql?
Comment peut-on la monter?

Est-ce que vous avez des liens sur cela pour un débutant avec des exemples ?

Je sais que je peux aussi chercher sur Google mais je n'ai pas trouvé un document complet, clair pour un débutant...

Merci votre compréhension à ma question générale...

« Dernière Édition: le 13-06-2011 a 19:13:46 par Pad » Rapporter au modérateur  

Re:base de données relationnelle ou modèle de données relationnel
« Répondre #1 sur: le 09-06-2011 a 16:07:09 »
aspkiddy
Membre récent
*

Hors-Ligne

Messages: 17





Voir le Profil    E-Mail
Répondre avec citation

pourquoi je vous pose cette question ?

Parce que je vais l'apprendre et voici un projet fictif :
J'ai un bd qui a 4 tables
table tb_marques contient 2 champs : id et chmps_marques
table tb_moteur contient 2 champs : id et chmps_moteur
table tb_annee contient 2 champs : id et chmps_annee
table tb_note contient 3 champs : id, chmps_id_note et chmps_notes


L’utilisateur affiche un formulaire avec 3 menus déroulants, "marques", "moteurs" et "année" dont les informations viennent de 3 différentes table et un champ de texte pour les notes.

Il sélectionne trois menus et il écrit ses notes dans le champ et valide le formulaire.

Je me demande si j'ai besoin d'un modèle de données relationnelles. Comment je fais la relation entre ces tables ? En fait, j'ai besoin de faire une relation entre les tables pour que j'affiche les résultats qui contient :
les notes, sur la marque, sur son moteur et sur l'année...

Rapporter au modérateur  
Re:base de données relationnelle ou modèle de données relationnel
« Répondre #2 sur: le 09-06-2011 a 22:48:41 »
Pad
Modérateur Global
*****

Hors-Ligne

Sexe: Male
Messages: 1391





Voir le Profil    WWW
Répondre avec citation

Pour faire les relations entre les tables, tu peux créer une autre table. Tout dépend des correspondances que tu veux établir.

Exemple :
Code:
table tb_marques contient 2 champs : id et chmps_marque
table tb_moteur contient 2 champs : id et chmps_moteur
table tb_annee contient 2 champs : id et chmps_annee
table tb_note contient 3 champs : id, chmps_id_note et chmps_notes
Nouvelle table tb_link contient 4 champs : id_marques, id_moteur, id_annee, id_note

« Dernière Édition: le 09-06-2011 a 22:48:58 par Pad » Rapporter au modérateur  

Webdéveloppeur / Webdesigner Indépendant
http://vincentdapp.fr/
SIRET 517 691 408 00028
Re:base de données relationnelle ou modèle de données relationnel
« Répondre #3 sur: le 10-06-2011 a 03:55:28 »
aspkiddy
Membre récent
*

Hors-Ligne

Messages: 17





Voir le Profil    E-Mail
Répondre avec citation

Merci pour les explications Pad...

Mais je ne sais pas comment je peux faire la relation sous PhpMyAdmin avec MySql...

Voici ma tentative avec une autre exemple simple :
j'ai créé ma première table, nom, qui contient 2 colonnes : id_nom etprenom

ma requête SQL
Code:
CREATE TABLE nom (id_nom INTEGER PRIMARY KEY,
prenom TEXT NOT NULL

);
ensuite 2e table,
ecole, avec 3 colonnes : id_ecole (clé première),  nom_prof et  nom_etud. Ce derniere est une clé étrangere (foreign key) qui vient du colonne 'id_nom' de table nom

voici mon code
Code:
CREATE TABLE ecole (id_ecole  INTEGER PRIMARY KEY,
nom_prof TEXT NOT NULL,
nom_etud INTEGER  NOT NULL REFERENCES nom(id_nom)

)


PHPmyAdmin crée les tables sans erreur, mais on ne voit pas du tout le concept de foreign key même si dans ma requête, il y avait "REFERENCES nom(id_nom)"

Alors comment je peux créer une table avec foreign key dans PhpMyAdmin ?

Rapporter au modérateur  
Re:base de données relationnelle ou modèle de données relationnel
« Répondre #4 sur: le 10-06-2011 a 05:13:06 »
Pad
Modérateur Global
*****

Hors-Ligne

Sexe: Male
Messages: 1391





Voir le Profil    WWW
Répondre avec citation

je crois que tu dois créer des tables de type myisam non ? Je crois qu'il n'y a que le format InnoDB qui permet de gérer les foreign keys. Essaye avec ça :

Code:

CREATE TABLE ecole (
id_ecole  INTEGER PRIMARY KEY,
nom_prof TEXT NOT NULL,
nom_etud INTEGER  NOT NULL REFERENCES nom(id_nom)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;


Rapporter au modérateur  

Webdéveloppeur / Webdesigner Indépendant
http://vincentdapp.fr/
SIRET 517 691 408 00028
Re:base de données relationnelle ou modèle de données relationnel
« Répondre #5 sur: le 13-06-2011 a 15:29:35 »
aspkiddy
Membre récent
*

Hors-Ligne

Messages: 17





Voir le Profil    E-Mail
Répondre avec citation

Merci Pad,

Comme tu dis, il faut un format InnoDB et  mettre les FK (Foreign Key) en Index

C'est Résolu...

Rapporter au modérateur  
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg