gpt4 book ai didi

python - 如何在 python 中动态绑定(bind) SQL 查询的多个参数?

转载 作者:行者123 更新时间:2023-12-05 03:08:16 25 4
gpt4 key购买 nike

所以,我有一个表(比如说 table_name ),它的列是:

|  A   |  B   |  C   |
------------------------
| a1 | b1 | c1 |
| a2 | b2 | c2 |
...

现在我必须使用以下查询读取列数据:

import pandas as pd
import pymysql as pycon

con = pycon.connect(host='localhost',user='root',password='', db='database')

#Error in here
df= pd.read_sql_query("SELECT A from table_name where B = %s and C != %s" %variableB %variableC, con)

但是我在 read_sql_query(...) 中遇到了一个错误,可能是查询格式错误,因为动态绑定(bind)的单个参数可以正常工作即

df= pd.read_sql_query("SELECT A from table_name where B = %s" %variableB, con)

工作没有错误。谁能帮我查询一下?

最佳答案

如果有人遇到同样的问题,正确的查询代码是 '%s' 而不是 %s

df= pd.read_sql_query("SELECT A from table_name where B = '%s' and C != '%s'" % (variableB, variableC), con)

下面的代码给了我 pymysql.err.InternalError。

df= pd.read_sql_query("SELECT A from table_name where B = %s and C != %s" % (variableB, variableC), con)

谢谢 stackOverflow :)

关于python - 如何在 python 中动态绑定(bind) SQL 查询的多个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45530042/

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