Comment passer des listes à SQLITE
Bonjour à tous,
Je réalise un petit programme dans lequel l'utilisateur va renseigner un certain nombres de TextCtrl, Chekbox...
L'HMI de mon programme regroupe ces widgets en catégorie.
Afin de me simplifier la vie, je souhaite dans une bdd Sqlite non pas passer chacune des valeurs de mes widgets mais des listes de valeurs par catégorie.
Cette manip m'éviterai d'avoir autant de valeur dans ma bdd qu'il existe de widget.
Le bu étant ensuite de relire la bdd et de pouvoir retravailler avec les listes.
Voici un début de ce que j'ai pensé faire:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
import sqlite3, os, os.path
connection = sqlite3.connect('local_data/mybdd.db')
c = connection.cursor()
try:
c.execute('''create table essai(liste1 list, liste2 list)''')
except: pass
liste_a = ['txt1', 'txt2']
liste_b = ['txt3', 'txt4']
c.execute("""insert into essai values (liste_a,liste_b)""")
... |
J'ai vu sur le site de Sqlite qu'il est possible de convertir le type des arguments que l'on passe à la bdd, mais je ne vois pas bien comment faire.
Un petit coup de pouce serait le bienvenu.
D'avance merci
extrait de la doc 'The Python Standard Library'
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # Never do this -- insecure!
symbol = 'IBM'
c.execute("... where symbol = '%s'" % symbol)
# Do this instead
t = (symbol,)
c.execute('select * from stocks where symbol=?', t)
# Larger example
for t in [('2006-03-28', 'BUY', 'IBM', 1000, 45.00),
('2006-04-05', 'BUY', 'MSOFT', 1000, 72.00),
('2006-04-06', 'SELL', 'IBM', 500, 53.00),
]:
c.execute('insert into stocks values (?,?,?,?,?)', t) |
-W