Saya benar-benar baru untuk modul sqlite3 Python (dan SQL secara umum dalam hal ini), dan ini benar-benar membuat saya bingung. Kurangnya deskripsi cursorobjek yang melimpah (lebih karena kebutuhannya) juga tampak aneh.
Potongan kode ini adalah cara yang disukai untuk melakukan sesuatu:
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()
Yang ini tidak, meskipun bekerja dengan baik dan tanpa (tampaknya tidak ada gunanya) cursor:
import sqlite3
conn = sqlite3.connect("db.sqlite")
conn.execute('''insert into table "users" values ("Jack Bauer", "555-555-5555")''')
conn.commit()
Adakah yang bisa memberi tahu saya mengapa saya perlu cursor?
Sepertinya overhead yang tidak ada gunanya. Untuk setiap metode dalam skrip saya yang mengakses database, saya seharusnya membuat dan menghancurkan cursor?
Mengapa tidak menggunakan connectionobjek saja?