我有这个代码:
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我吐出的行数为1.
那么,问题是:
如果插入正常,我可以使用rowcount计算出来吗?如果是这样,我(大概)做错了什么?
否则,我如何检查插入是否正常?