BD + php + requete SQL
Résolu
dadou
-
dadou -
dadou -
salut à tous, je suis en train de créer un projet en php (gestion d'une bibliotheque).
dans la base de données il y a la table etudiant qui peut emprunter des ouvrages.
Ma question c'est: dans la base de données que je l'ai créé sur localhost/phpmyadmin , est ce qu'il faut ajouter la clé primaire de la table ouvrage dans la table etudiant ou inversement et si oui comment faire ?
merci de me répondre
:)
dans la base de données il y a la table etudiant qui peut emprunter des ouvrages.
Ma question c'est: dans la base de données que je l'ai créé sur localhost/phpmyadmin , est ce qu'il faut ajouter la clé primaire de la table ouvrage dans la table etudiant ou inversement et si oui comment faire ?
merci de me répondre
:)
A voir également:
- BD + php + requete SQL
- Easy php - Télécharger - Divers Web & Internet
- Télécharger bd pdf gratuit sans inscription - Forum PDF
- Requete sql pix - Forum PHP
- W.i.t.c.h. bd intégrale pdf - Forum Liseuse eBook
- Télécharger BD gratuitement ✓ - Forum Téléchargement
2 réponses
Bonjour,
Si tu rajoutes la clef primaire de Ouvrage dans Etudiant, cela signifie qu'un étudiant ne pourra avoir qu'un seul ouvrage emprunté à la fois, et t'empêchera d'en garder un historique.
Si tu rajoutes la clef primaire de Etudiant dans Ouvrage, cela signifie qu'un livre ne pourra être emprunté que par un seul étudiant. C'est valable si tu ne souhaites pas garder d'historique.
Ces deux solutions sont donc restrictives.
En général, on crée une table intermédiaire, du genre :
Cela permet de stocker n'importe quelle combinaison d'ouvrages et d'étudiants, avec en plus des données supplémentaires sur l'emprunt réalisé.
Xavier
Si tu rajoutes la clef primaire de Ouvrage dans Etudiant, cela signifie qu'un étudiant ne pourra avoir qu'un seul ouvrage emprunté à la fois, et t'empêchera d'en garder un historique.
Si tu rajoutes la clef primaire de Etudiant dans Ouvrage, cela signifie qu'un livre ne pourra être emprunté que par un seul étudiant. C'est valable si tu ne souhaites pas garder d'historique.
Ces deux solutions sont donc restrictives.
En général, on crée une table intermédiaire, du genre :
create table etudian_ouvrage ( -- colonnes obligatoires id_etudiant not null int, id_ouvrage not null int, -- colonnes supplémentaires, selon ton besoin date_emprunt not null timestamp, date_rendu null timestamp --etc...
Cela permet de stocker n'importe quelle combinaison d'ouvrages et d'étudiants, avec en plus des données supplémentaires sur l'emprunt réalisé.
Xavier