Мотивация

При всех достоинствах Python DB API 2.0, он многословен. С одной стороны, возможно, это связано с API библиотек, работы с БД, возможно с источником вдохновения, возможно с привычками. Однако для работы с такими легковесными СУБД как SQLite, особого пафоса в вызовах не хочется, но очень хочется большей простоты.

Данный инструмент пытается её дать.

Классы

Имя Описание
DB Объект подключения к БД
DBError Объект исключений при работе с БД
IntegrityError Отдельно проброшенный класс, отвечающий за проверки целостности на стороне СУБД. Дабы иметь возможность адекватно реагировать на неуникальные значения или иные попытки нарушить целостность данных в БД

DB

Для создания подключения нужно дать выполнить:

DB(db_file)
Параметр Тип Описание
db_file str Имя файла БД либо строка :memory:, если нет необходимости в хранении данных, и они будут жить только в ОЗУ

Выполнение запроса

Для выполнения запроса достаточно передать его в качестве параметра при вызове объекта подключения.

memdb = DB(':memory:')
for rowid, txt in memdb('SELECT rowid, txt FROM t'):
  print(id, txt)

Возвращает функция объект курсора (в терминах DB API), в котором уже исполнен запрос, и из которого можно получить запрошенные данные. Работа с этим курсором описана в документации

Параметры также даны в соответствующем разделе документации. Они пробрасываются непосредственно в execute

cq()

Версия Выполнение_запроса только перед выдачей курсора на объекте соединения (в терминах DB API 2.0) исполняется метод commit(). В случае возбуждения исключения немедленно исполняется rollback() и исключение пробрасывается в вызывающую метод процедуру.

Параметры у функции те же.

commit()

См. ОДо. Метод берётся как есть.

rollback()

См. ОДо. Метод берётся как есть.