Python如何知道记录是否成功插入

时间:2013-09-27 08:29:08

标签: python mysql mysql-connector

我正在使用Python MySQL Connector,我在数据库中插入了一条记录,并且成功了。但是在Python代码中,我怎么知道它是否被插入? 我的表没有主键。

def insert(params) :
    db_connection = Model.get_db_connection()
    cursor = db_connection.cursor()
    try :
        cursor.execute("""INSERT INTO `User`(`UID`, `IP`) VALUES(%s,%s);""", (params))
        db_connection.commit()
    except :
        db_connection.rollback()
    Model.close_db(db_connection)
    return result

1 个答案:

答案 0 :(得分:27)

您可以使用.rowcount属性:

cursor.execute("""INSERT INTO `User`(`UID`, `IP`) VALUES(%s,%s);""", params)
print("affected rows = {}".format(cursor.rowcount))
  

.rowcount 此只读属性指定了行数   生成的最后一个.execute *()(用于SELECT等DQL语句)或   受影响(对于UPDATE或INSERT等DML语句)。 [9]