Bonjour, voila je recherche à mettre des conditions sur mon programme python dans le c.execute() voila un exemple:
Forcé de constater que cela ne fonctionne pas, le principe y est. En fait si je trouve le moyen de mettre des conditions sur des variables venant de python dans mon sql pour qu'il ajoute ou non une requete ("AND..." dans le WHERE) je gagnerais énormément de temps sinon je devrais recopier quasiment les mêmes codes sql en fonction des conditions écrites dans le python
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 import sqlite3 conn = sqlite3.connect('TABLES.db') c = conn.cursor() def ET(et_type, t): """Etablissement en fonction du type""" c.execute( """SELECT nom FROM ETABLISSEMENT, REFERE WHERE idnomprime = ETABLISSEMENT.id CASE WHEN """ + str(t) + """ > 0 THEN arrondissement = """ + str(t) + """AND idtype = """ + str(et_type) +""" ELSE idtype = """ + str(et_type) +""" END;""" ) return c.fetchall()
(if...: c.ecute(...)
elif c.execute(...) ...),
or j'ai 8 variables, donc si je fais comme cela j'ai 8! = 40 000 codes sql à peine différent à réaliser!
Partager