gpt4 book ai didi

python - mysql查询使用python

转载 作者:行者123 更新时间:2023-11-30 22:31:27 25 4
gpt4 key购买 nike

我正在使用 python 3.x 和 mysql.connector 访问 Mysql 数据库。我在查询数据库时遇到问题。

当我运行以下查询时,我得到了正确的结果:

cursor.execute("SELECT idx FROM db WHERE name = 'John Smith'")

当我尝试运行以下查询时出现错误:

cursor.execute("SELECT idx FROM db WHERE name = %s",'John Smith')

File "<input>", line 1, in <module>
File "C:\Python34\lib\site-packages\mysql\connector\cursor.py", line 515, in execute
self._handle_result(self._connection.cmd_query(stmt))
File "C:\Python34\lib\site-packages\mysql\connector\connection.py", line 488, in cmd_query
result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))
File "C:\Python34\lib\site-packages\mysql\connector\connection.py", line 395, in _handle_result
raise errors.get_exception(packet)
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 '%s' at line 1

我试过运行以下查询,但似乎查询搜索的是“%s”而不是字符串“John Smith”

cursor.execute("SELECT idx FROM db WHERE name = '%s'",'John Smith')

我不确定错误是否是由于我使用的字符串中包含空格,但我一直无法解决问题。

最佳答案

q="SELECT idx FROM db WHERE name = %s";

cursor.execute(q,'Xander')

关于python - mysql查询使用python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33788679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com