24-NSIJ1G11-3
-
Une base de données relationnelle permet par exemple d'assurer la cohérence des données (en évitant les doublons ou incohérences) et leur sécurité (en contrôlant les accès et en protégeant contre les pertes ou modifications non autorisées).
-
Un attribut peut être utilisé comme clé primaire s'il permet d'identifier de manière unique chaque enregistrement de la relation.
-
Dans la relation
Reservation
, la clé étrangèreid_client
fait référence à la clé primaireid_client
de la relationClient
et permet d'indiquer quel client a effectué la réservation.De même, la clé étrangère
id_emplacement
fait référence à la clé primaireid_emplacement
de la relationEmplacement
et précise quel emplacement a été réservé. -
Le schéma relationnel de la relation
Emplacement
:Emplacement(id_emplacement: INT, nom: TEXT, localisation: TEXT, tarif_journalier: FLOAT) -
id_emplacement
nom
localisation
1 myrtille A4 4 mandarine B1 6 melon A2 -
SELECT Client.nom, Client.prenom, Reservation.nombre_personne, Reservation.date_arrivee, Reservation.date_depart, Emplacement.tarif_journalier FROM Client JOIN Reservation ON Reservation.id_client = Client.id_client JOIN Emplacement ON Emplacement.id_emplacement = Reservation.id_emplacement WHERE Reservation.id_reservation = 18;
-
Le paramètre
self
est une référence de l'objet sur lequel on applique la méthode. -
La variable
annee
stocke une année sous forme de chaîne de caractères. Or, lors de la comparaison2018 <= annee <= 2024
, on tente de comparer cette chaîne à des entiers, ce qui n'est pas autorisé en Python, d'où l'erreur. -
Il suffit de convertir
annee
en entier avant d'effectuer la comparaison : -
La fonction se complète à partir de la ligne 28 comme :