Connessione SQLite con Python
SQLite è un semplice database leggero e portatile, che risiede in un unico file con estensione .sqlite o .db (non so se esistono altre estensioni).
Praticamente tutti i linguaggi hanno librerie (interne o esterne) per connettercisi, e oggi vediamo come farlo con Python.
In questo linguaggio non abbiamo bisogno di nulla in più, in quanto è già disponibile un modulo: sqlite3.
Questo modulo si riferisce all'ultima versione di SQLite, che ormai è quella standard.
Vediamo quindi di creare una semplice classe per la connessione e l'esecuzione di una query:
import sqlite3 as sq
class Conn:
conn = None
def __init__(self):
self.conn = sq.connect('films.sqlite')
def getAll(self):
with self.conn:
self.conn.row_factory = sq.Row
cursor = self.conn.cursor()
cursor.execute('SELECT * FROM film')
rows = cursor.fetchall()
for row in rows:
print("%s - %s" % (row["id"], row["title"]))
if __name__ == "__main__":
c = Conn()
c.getAll()
Abbiamo una classe con un metodo.
Nel costruttore della classe inizializiamo la connessione, indicando al metodo connect il path del file.
Nel nostro metodo eseguiamo la query, prendendo tutti i risultati con fetchAll, che ritorna una lista.
Sotto iteriamo sulla lista e stampiamo i record.
Molto veloce e con poco codice!
Enjoy!
python database sqlite fetchall sqlite3
Commentami!