Python 2.7 无法使用python更新表中输入列的值?
注释:改进的格式 无法使用python更新表的输入列的值Python 2.7 无法使用python更新表中输入列的值?,python-2.7,mysql-python,Python 2.7,Mysql Python,注释:改进的格式 无法使用python更新表的输入列的值 import pymysql import os conn = pymysql.connect(host='localhost',database='pyp',user='root',password='') a = conn.cursor() i= raw_input('enter column name : ') sql='UPDATE report SET %s = "xyz" WHERE Id = 1' a
import pymysql
import os
conn = pymysql.connect(host='localhost',database='pyp',user='root',password='')
a = conn.cursor()
i= raw_input('enter column name : ')
sql='UPDATE report SET %s = "xyz" WHERE Id = 1'
a.execute(sql,(i))
conn.commit()
conn.close()
[预期输出]----------------------------------->
将id为1的选定列的值更新为xyx
程序应询问列名,并更改输入列名的值
[错误]----------->
输入列名:name
编程错误:(1064,您的SQL语法有错误;请查看与您的MariaDB服务器版本相对应的手册,以了解在第1行的\'\'name\'='name“WHERE Id=1\'附近使用的正确语法)您可能试图将'name'键作为'name'键传递 这样做-
import pymysql
import os
conn = pymysql.connect(host='localhost',database='pyp',user='root',password='')
a = conn.cursor()
i= raw_input('enter column name : ')
sql='UPDATE report SET %s = "xyz" WHERE Id = 1'
a.execute(sql,(i))
conn.commit()
conn.close()
如果它解决了您的问题,请告诉我。它成功了。如何执行查询***i=raw_input('enter column name')***h=raw_input('enter id')*****sql='UPDATE report SET{}=“xyz”WHERE id=s%'如何执行??您可以这样添加-“UPDATE report SET{0}=“xyz”WHERE id={1}”。格式(i,h)
sql='UPDATE report SET {} = "xyz" WHERE Id = 1'
a.execute(sql.format(str(i)))