MySQLdb没有INSERTING,_mysql没问题

时间:2010-04-07 06:41:23

标签: python mysql

好的,我以root身份登录MySQL命令行客户端。然后我以root身份使用MySQLdb模块打开或以其他方式运行python应用程序。当我使用python(IDLE)检查结果时,一切看起来都很好。当我使用MySQL命令行客户端时,没有发生INSERT。如果我将内容改为_mysql而不是MySQLdb,一切正常。我很感激任何澄清。

“工作”直到重置IDLE /虚拟机:

import MySQLdb
db = MySQLdb.connect(user='root', passwd='*******',db='test')
cursor = db.cursor()
cursor.execute("""INSERT INTO test VALUES ('somevalue');""",)

使用:

import _mysql
db = _mysql.connect(user='root', passwd='*******',db='test')
db.query("INSERT INTO test VALUES ('somevalue');")

系统信息: 英特尔x86 WinXP中 Python 2.5 MySQL 5.1.41 MySQL-Python 1.2.2

2 个答案:

答案 0 :(得分:17)

您可以使用db.commit()提交数据或在db.autocommit()之后设置_mysql.connect(...)以自动提交请求。

答案 1 :(得分:4)

我认为他们使用不同的自动提交设置。插入数据后使用commit()。