0

我正在编写我的第一个 python 脚本,我正在尝试将它连接到 mysql 数据库以插入行。

import MySQLdb

db = MySQLdb.connect("localhost","root","xxx","pytest" )

cursor = db.cursor()

cursor.execute("INSERT INTO `first_table` (`name`) VALUES ('boop') ")

当我通过 phpmyadmin 检查 mysql 数据库时,它不包含任何行,但是如果自动递增 ID 为 5,然后我运行脚本 2 次,当我插入一个新行时,它会将其插入为 id=8,因此脚本一直在递增主键但不插入行?

该脚本没有报告任何mysql错误,所以我在这里有点迷失了。

4

3 回答 3

1

您可以使用

 cursor.autocommit(True)

在代码的开头自动提交更改。

于 2013-06-25T11:41:03.143 回答
1

在你的情况下,请使用

import MySQLdb

    db = MySQLdb.connect("localhost","root","jimmypq79","pytest" )
    cursor = db.cursor()
    cursor.execute("INSERT INTO `first_table` (`name`) VALUES ('boop') ")
    db.commit()

请像这样把它放在代码的顶部 -

db = MySQLdb.connect("localhost","root","jimmypq79","pytest" )
db.autocommit(True)

在这里检查

于 2013-06-25T11:45:55.737 回答
0

你用,

  db.commit()

插入查询后

于 2013-06-25T12:22:11.527 回答