在Python 3.3中使用%s进行SQL查询
问题内容:
我正在尝试从MySQL数据库检索数据。
A = "James"
query = ("SELECT * FROM DB.tblusers WHERE UserName = %s ")
c = mysql.connector.connect(user='root', password='',
host='127.0.0.1',
database='DB')
cur1 = c.cursor()
cur1.execute(query, A)
给出以下错误信息:
mysql.connector.errors.ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%' at line 1
但是,SQL可在mySQL Workbench中使用。有任何想法吗?
问题答案:
A
应该是一个元组,尝试 A = ("James",)
参见MySQLCursor.execute的文档(操作,参数=无,多=假)
编辑:由于“ swordofpain”而加了一个逗号(我学到了一些东西)