Sono completamente nuovo nel modulo sqlite3 di Python (e SQL in generale per quella materia), e questo mi sorprende completamente. Anche l'abbondanza di descrizioni degli cursor
oggetti (piuttosto la loro necessità) sembra strana.
Questo frammento di codice è il modo preferito di fare le cose:
import sqlite3
conn = sqlite3.connect("db.sqlite")
c = conn.cursor()
c.execute('''insert into table "users" values ("Jack Bauer", "555-555-5555")''')
conn.commit()
c.close()
Questo non lo è, anche se funziona altrettanto bene e senza (apparentemente inutile) cursor
:
import sqlite3
conn = sqlite3.connect("db.sqlite")
conn.execute('''insert into table "users" values ("Jack Bauer", "555-555-5555")''')
conn.commit()
Qualcuno può dirmi perché ho bisogno di un cursor
?
Sembra inutile sovraccarico. Per ogni metodo nel mio script che accede a un database, dovrei creare e distruggere un cursor
?
Perché non usare semplicemente l' connection
oggetto?