我正在编写我的第一个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错误,所以我在这里有点迷失。
答案 0 :(得分:1)
您可以使用
cursor.autocommit(True)
在自动提交更改的代码的开头。
答案 1 :(得分: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)
答案 2 :(得分:0)
你用,
db.commit()
插入查询后