Bonsoir,
Le message d'erreur mis en titre apparait lors de l'utilisation de ce bout de programme en python 3.3, en fait au niveau de la requete "SELECT ..." en fin de cet extrait :
J'ai essayé en ajoutant SELF dans les arguments de la fonction, etc. Le traitement s'effectue sans problème lorsque je remplace wchoix par une constante (ex : 7).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 def NouvelleQuestion(self): if self.NombreEnregistrements == 0: print("Terminé") else : self.NoListeChoisi = random.randint(1, self.NombreEnregistrements) self.NoEnrChoisi = int(self.list_indices[(self.NoListeChoisi-1)]) print ("Numéro aléatoire : ", self.NoListeChoisi, "Numero enreg : ", self.NoEnrChoisi) print ("liste avant suppression : ", self.list_indices) del self.list_indices[(self.NoListeChoisi-1)] print ("liste apres suppression : ", self.list_indices) self.NombreEnregistrements=len(self.list_indices) self.TraitementUnEnr(self.NoEnrChoisi) self.RaZFormulaireSaisie() def TraitementUnEnr(self, NoEnrChoisi): print ("Numero dans traitement : ", NoEnrChoisi) wchoix=int(NoEnrChoisi) cur.execute("""SELECT rowid, Interr_CodeDomaine, Interr_Donnee1Valeur, Interr_Donnee1Commentaires, Interr_Donnee2Valeur, Interr_Donnee2Commentaires FROM InterrogationDonnees WHERE ROWID IS wchoix """) # Lire l'enregistrement for row in cur: print("enr lu : ", row)
Message exact (y compris les lignes de suivi) :
Dois-je ouvrir une bouteille de rhum pour me remonter le moral, SVP?
Numéro aléatoire : 12 Numero enreg : 12
liste avant suppression : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
liste apres suppression : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
Numero dans traitement : 12
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python33\lib\tkinter\__init__.py", line 1442, in __call__
return self.func(*args)
File "D:/Python/Programmes utilisables/Interrogations Questionnement.py", line 249, in InitialisationListeNo
self.NouvelleQuestion()
File "D:/Python/Programmes utilisables/Interrogations Questionnement.py", line 265, in NouvelleQuestion
self.TraitementUnEnr(self.NoEnrChoisi)
File "D:/Python/Programmes utilisables/Interrogations Questionnement.py", line 274, in TraitementUnEnr
cur.execute("""SELECT rowid, Interr_CodeDomaine, Interr_Donnee1Valeur, Interr_Donnee1Commentaires, Interr_Donnee2Valeur, Interr_Donnee2Commentaires FROM InterrogationDonnees WHERE ROWID IS wchoix """) # Lire l'enregistrement
sqlite3.OperationalError: no such column: wchoix(à consommer avec une extréme modération)
Merci d'avance pour votre aide
Luc
Partager