我在使用这种python方法时遇到了一些麻烦。
我在选择结果时没有任何问题,但是当我尝试执行更新时,我没有得到任何结果。
我试图生成另一个游标对象,重新定义游标,生成另一个连接,使用不同的sql查询(不使用%s)并且我没有任何结果。
如果你能给我任何帮助,我将非常感激。
def getTarea():
conn = db.connect('url','user','pass','dbInstance')
with conn:
try:
cursor = conn.cursor(db.cursors.DictCursor)
sql = "SELECT CMD, ID_TAREA FROM TAREAS WHERE OBTENIDA = '0' AND DEVICE_ID = '1001' ORDER BY FECHA_TAREA DESC LIMIT 1"
cursor.execute(sql)
f.write(sql+"\n")
# fetch all of the rows from the query
data = cursor.fetchone()
# print the rows
f.write("CMD: "+data["CMD"]+"\n")
f.write("ID_TAREA: "+ str(data["ID_TAREA"])+"\n")
idTarea = str(data["ID_TAREA"])
obtenido = 1
cursor.execute("""UPDATE TAREAS SET OBTENIDA=%s WHERE ID_TAREA =%s""", (obtenido, idTarea))
cursor.close()
conn.close()
except Exception as e:
f.write("error \n"+e)
return cmd
答案 0 :(得分:1)
conn.commit()
将提交更改,如此类似帖子中所述:Database does not update automatically with MySQL and Python