kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn

Как получить результат выполнения SQL запроса в Python?

К примеру есть sql-запрос:
INSERT INTO categories(category, sub_category) 
    SELECT category, sub_category 
    FROM (SELECT "category" as category, "Final" as sub_category) temp 
    WHERE NOT EXISTS (SELECT 1 FROM categories WHERE categories.category = temp.category AND categories.sub_category = temp.sub_category)

Который выполняется так:
async with aiosqlite.connect('categories.db') as db:
    await db.execute(sql)
    await db.commit()

Как я могу получить статус его выполнения?
Вроде такого:
Result: запрос успешно выполнен. Заняло 1мс, 1 строк изменено

Вот это не работает:
print(await db.execute(sql))
print(await db.commit)
status = await db.fetch()
print(status)
  • Вопрос задан
  • 353 просмотра
Решения вопроса 1
kshnkvn
@kshnkvn Автор вопроса
yay ✌️ t.me/kshnkvn
Судя по оф. документации такой функции нет и единственный способ - это что-то такое:
if db.total_changes > 0:
    print('Insertion category {} with sub_category {} complete'.format(value, categories[index]))


Или я ошибаюсь?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы