我想我对python和mysql有权限问题。这是我的测试代码测试.py在#!/usr/bin/python
import MySQLdb
#change the host, user, passwd, and db below as necessary
db = MySQLdb.connect(host="localhost", user="username", passwd="password", db="database")
cur = db.cursor()
cur.execute("SELECT * from table")
a = cur.fetchall()
print "pre values"
print a
cur.execute("insert into table values(3)")
db.commit
cur.execute("SELECT * from table")
a = cur.fetchall()
print "updated values"
print a
cur.close()
db.close()
当我在shell中执行mysql并尝试插入值时,用户名/密码肯定有效,所以假设我的表中已经有值1和2。它试图给它写一个3并提交它。在
这个打印出来了
^{pr2}$
当我再次尝试运行完全相同的脚本时,它会给出完全相同的输出。因此,尽管显示它确实添加到数据库中,但它没有添加到数据库中。当我在shell中访问mysql并查看表时,它确实没有插入新值。在
我找过的每一个地方都一遍又一遍地告诉我数据库提交,我现在很困惑。在
编辑:我还去了数据库在我的计算机上的位置(所有的东西都在我的本地计算机上),然后chmod'd777访问了数据库和包含它的文件夹。在