我用MySQLdb創建了一個數據庫。
在數據庫中,我有名字student
一個表列:設置%s的Mysqldb更新錯誤
id(is int), id_user(is int), f_name(is str), l_name(is str)
我想更新一行。
我的代碼如下:
db=mdb.connect(host="localhost", use_unicode="True", charset="utf8",
user="", passwd="", db="test")
# prepare a cursor object using cursor() method
cursor = db.cursor()
sql="""SELECT id_user FROM student"""
try:
# Execute the SQL command
cursor.execute(sql)
# Commit your changes in the database
db.commit()
except:
# Rollback in case there is any error
db.rollback()
rows = cursor.fetchall()
the=int(7)
se=str('ok')
for row in rows:
r=int(row[0])
if r==the:
sql2 = """UPDATE student
SET f_name=%s
WHERE id_user = %s"""% (se,the)
# Execute the SQL command
cursor.execute(sql2)
# Commit your changes in the database
db.commit()
db.rollback()
# disconnect from server
db.close()
當我運行它,我採取的錯誤是列名稱爲好,爲什麼?
任何人都可以幫我找到我做錯了嗎?
你應該附上字符串轉換爲單引號。 – 2012-03-16 18:53:29