У меня есть этот код:
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
, чтобы убедиться, что вставка прошла нормально? Если так, что я (по-видимому) делаю неправильно?
в противном случае, как проверить, что вставка прошла нормально?