prenom=input("\nEntrez le prénom du guide à ajouter\n")
...
...
@@ -491,105 +522,139 @@ def inserer_guide():
print("Message système :",e)
definsert_panneau():
cur=conn.cursor()
sql="SELECT num FROM salle"
cur.execute(sql)
raw=cur.fetchone()
ifraw:
print("Parmis les salles suivantes :")
whileraw:
print(f" Salle {raw[0]}")
raw=cur.fetchone()
num=int(input(
"Dans laquelle voulez-vous ajouter un panneau ? (Entrez le numéro de la salle)\n"))
desc=input("\nQuelle est la description du panneau ?\n")
try:
sql=f"INSERT INTO Panneau (salle, description) VALUES ({num}, '{desc}');"
cur.execute(sql)
conn.commit()
exceptpsycopg2.DataErrorase:
conn.rollback()
print("\nContrainte non respectée")
print("Message système :",e)
defmain():
cont=1
whilecont==1:
print(conn)
menu()
cont=int(input("Continuer ? 1 si oui, 0 si non\n>"))
cont=int(input("Continuer ? 1 si oui, 0 si non\n>"))
conn.close()
print(conn)
return0
defmenu():
print("\nListe des requêtes :")
print(" 1. Lister les guides avec leur identification, nom, prénom, et date d'embauche.")
print(" 2. Lister toutes les informations des expositions permanentes.")
print(" 3. Lister toutes les informations des expositions temporaires en cours et futures, ainsi que les identifications et noms des salles qui leur sont attribuées.")
print(" 4. Afficher les identifications des guides participant à une exposition donnée (gérer cas exposition permanente et exposition temporaire).")
print(" 5. Afficher le nombre d'oeuvres et le prix moyen d'acquisition des oeuvres d'une exposition donnée.")
print(" 6. Lister les oeuvres appartenant au Louvre (identification unique, titre, dates et type), triées dans cet ordre par type, par date, par titre.")
print(" 7. Identifier de manière unique les oeuvres actuellement prêtées (pas les prêts passés ni futurs) par le Louvre, avec la date de fin du prêt, triées par date de fin du prêt.")
print(" 8. Afficher le temps moyen des prêts avec chaque musée extérieur, identifié de manière unique et avec leur nom et adresse (groupé par musée).")
print(" 9. Indiquer pour chaque oeuvre (inclure les oeuvres appartenant à des musées extérieurs) : le prix d'acquisition, le nombre de restaurations qu'elle a subi, et le coût cumulé des restaurations.")
print(" 10. Compter le nombre d'oeuvres actuellement absentes (= en prêt ou en restauration), groupées par exposition permanente identifiée de manière unique.")
print(" 11. Identifier de manière unique les oeuvres actuellement empruntées par le Louvre, avec l'identification unique et le titre de l'exposition temporaire où elles sont exposées, avec la date de fin de l'emprunt, triées par date de fin de l'emprunt.")
print(" 12. Afficher les oeuvres ayant été créées à une période donnée, avec toutes leurs informations ainsi que l'identification unique, nom, si elles appartiennent ou non au Louvre, les durées éventuelles des expositions dans lesquelles elles sont/ont été/seront exposées.")
print(" 13. Compter le nombre de créneaux d'attribution de visite d'expositions permanentes par guide (avec toutes les informations des guides, pas de distinction par exposition).")
print(" 14. Compter le nombre d'expositions accueillies par salles, par ordre décroissant, avec la durée cumulée, ainsi que l'affichage de toutes les informations de la salle.")
choice1=int(input(
"\nVoulez-vous faire une requête (tapez 0) ou une insertion de données ? (tapez 1)\n> "))
ifchoice1==0:
print("\nListe des requêtes :")
print(" 1. Liste des guides")
print(" 2. Liste des informations des expositions permanentes")
print(
" 3. Liste des informations des expositions temporaires en cours et futures")
print(" 4. Identifications des guides d'une exposition donnée")
print(" 5. Nombre d'oeuvres et prix moyen d'acquisition des oeuvres d'une exposition donnée")
print(" 6. Liste des oeuvres appartenant au Louvre")
print(" 7. Oeuvres actuellement prêtées par le Louvre")
print(" 8. Afficher le temps moyen des prêts avec chaque musée extérieur")
print(" 9. Prix d'acquisition, nombre de restaurations, et coût cumulé des restaurations pour chaque oeuvre")
print(" 10. Nombre d'oeuvres actuellement absentes")
print(" 11. Oeuvres actuellement empruntées par le Louvre")
print(" 12. Oeuvres ayant été créées à une période donnée")
print(" 13. Nombre de créneaux d'attribution de visite d'expositions permanentes par guide")
print(" 14. Nombre d'expositions accueillies par salles\n")
choice2=int(input("Entrer Votre choix\n> "))
print("\nInserer des données:")
print(" 20. Insertion d'un nouveau musée")
print(" 21. Insertion oeuvre néolithique")
print(" 22. Creer une nouvelle exposition permanente")
print(" 23. Insertion d'une exposition temporaire et d'oeuvres extérieures exposées")
print(" 24. Insertion d'une salle d'exposition")
print(" 25. ")
print(" 26. Insertion d'un guide et affectation à des expositions")
ifchoice2==1:
liste_guide()
choice=int(input("Entrer Votre choix\n>"))
ifchoice2==2:
liste_expos_permanentes()
ifchoice==1:
liste_guide()
ifchoice2==3:
liste_expos_temporaires()
ifchoice==2:
liste_expos_permanentes()
ifchoice2==4:
afficher_guide_expo()
ifchoice==3:
liste_expos_temporaires()
ifchoice2==5:
info_expo()
ifchoice==4:
afficher_guide_expo()
ifchoice2==6:
liste_oeuvres_louvre()
ifchoice==5:
info_expo()
ifchoice2==7:
liste_oeuvre_pretees()
ifchoice==6:
liste_oeuvres_louvre()
ifchoice2==8:
temp_moyen_pret()
ifchoice==7:
liste_oeuvre_pretees()
ifchoice2==9:
informations_oeuvres()
ifchoice==8:
temp_moyen_pret()
ifchoice2==10:
liste_oeuvres_absentes()
ifchoice==9:
informations_oeuvres()
ifchoice2==11:
liste_oeuvre_empruntees()
ifchoice==10:
liste_oeuvres_absentes()
ifchoice2==12:
liste_oeuvre_periode()
ifchoice==11:
liste_oeuvre_empruntees()
ifchoice2==13:
nb_creneaux()
ifchoice==12:
liste_oeuvre_periode()
ifchoice2==14:
nb_expos()
ifchoice1==1:
print("\nInserer des données:")
print(" 1. Insertion d'un nouveau musée")
print(" 2. Insertion oeuvre extérieure")
print(" 3. Creation d'une nouvelle exposition permanente")
print(
" 4. Insertion d'une exposition temporaire et d'oeuvres extérieures exposées")
print(" 5. Insertion d'une salle d'exposition")
print(" 6. Insertion d'un panneau")
print(" 7. Insertion d'un guide et affectation à des expositions\n")