首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单查询时出现Python MySQL语法错误

问简单查询时出现Python MySQL语法错误
EN

Stack Overflow用户
提问于 2015-03-23 10:32:06
回答 1查看 1.2K关注 0票数 1

我正在使用Python3.x的MySQL连接器,并通过如下的简单代码解决了这个问题:

rest_cursor.execute("SELECT * FROM restaurant WHERE r_id=%s",(r_id))

其中r_id是整数。这将导致抛出异常: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 '%s' at line 1

此格式似乎与python-MySQL示例页面中的示例相匹配:http://dev.mysql.com/doc/connector-python/en/connector-python-example-cursor-select.html。

我做错了什么?谢谢

EN

回答 1

Stack Overflow用户

发布于 2015-03-23 10:38:19

要创建单项元组,必须在结束括号前包含一个逗号:

代码语言:javascript
复制
rest_cursor.execute("SELECT * FROM restaurant WHERE r_id=%s", (r_id,))

否则,Python会认为您只是为了分组而将一个值包含在圆括号中。

再举一个例子,注意Python计算这两个值的方式的不同:

代码语言:javascript
复制
(1) → 1
(1,) → (1,)
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29202471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档