У меня есть этот код:
cursor = conn.cursor()
cursor.execute(("insert into new_files (videos_id, filename, "
"is_processing) values (%s,%s,1)"), (id, filename))
logging.warn("%d", cursor.rowcount)
if (cursor.rowcount == 1):
logging.info("inserted values %d, %s", id, filename)
else:
logging.warn("failed to insert values %d, %s", id, filename)
cursor.close()
Забавно, cursor.rowcount
всегда один, даже хотя я обновил свою базу данных, чтобы сделать videos_id уникальным ключом, то есть вставить не удалось, потому что в моих тестах будет отображаться тот же videos_id
(и когда я проверяю базу данных, ничего не было вставлено).
Но по какой-то причине rowcount
всегда равен 1 - даже logging.warn
у меня выдает rowcount
из 1.
Итак, вопрос :
Могу ли я использовать rowcount
, чтобы определить, прошла ли вставка нормально? Если да, то что я (предположительно) делаю не так?
в противном случае, как мне проверить, прошла ли вставка нормально?