Home / Programmazione / Python / Connessione SQLite con Python
Mattepuffo

Connessione SQLite con Python

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!