Вопрос к гуру #Python и #SQLite: что вы передаете в функции, Cursor или Connection? Какие плюсы и минусы, или нет никакой разницы?

Если нужно коммитить, то насколько странно делать это через cur.connection.commit()?

@cybertailor
Операции записи я делаю через:

with self.db as conn: conn.execute(…)

Контекстный менеджер начинает транзакцию и делает коммит при выходе из него, если не произошло ошибок, иначе роллбэк.

Между функциями передаю sqlite3.Connection (точнее, свой класс-обёртку, который реализует все CRUD).
Курсоры вообще не нужно самостоятельно менеджить, все execute вполне нормально делать на объекте Connection, а насчёт закрытия курсоров позаботится GC.

Getting the most out of SQLite3 with Python

Simplex Sigillum Veri