Obtenir le nom des colonnes d'une table SQlite3 sous python


Considérons toujours le même cas d'étude (voir): on dispose d'une base de donnée crée par exemple ici avec SQlite intitulée "MyDataBase.db" et on veut retrouver cette fois le nom des colonnes et leurs types. Pour cela, avec sqlite3 il suffit de lancer la commande suivante:

sqlite3 MyDataBase.db

puis de taper dans l'invite de commande sqlite:

PRAGMA table_info(NomDeLaTable);

exemple complet

toto$ sqlite3 MyDataBase.db 
SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .tables
Clients
sqlite> PRAGMA table_info(Clients);
0|id|INTEGER|0||1
1|Nom|TEXT|0||0
2|Rue|TEXT|0||0
3|Ville|TEXT|0||0
4|Region|TEXT|0||0
5|Note|REAL|0||0
sqlite>

ici on voit que la table "Clients" possede 6 colonnes de type entier (1), texte (4) et réel (1).

script python:

import sqlite3

con = sqlite3.connect('MyDataBase.db')
cursor = con.cursor()
cursor.execute("PRAGMA table_info(Clients);")
print(cursor.fetchall())

Recherches associées