gpt4 book ai didi

python - 将变量绑定(bind)到 Pandas.read_sql 的 SQLAlchemy 查询

转载 作者:行者123 更新时间:2023-12-05 08:41:11 27 4
gpt4 key购买 nike

是否可以将变量绑定(bind)到 Pandas.read_sql 语句中使用的 SQLAlchemy 查询?

在 WHERE 子句中使用 %s 不起作用,cx_Oracle 的文档指出:

cursor.execute('SELECT * FROM employees WHERE department_id=:dept_id)

直接使用 cx_Oracle 驱动程序在 Pandas 中已被弃用,这不是一个可行的选择。

我有一个组列表,我需要遍历 WHERE 语句,因为 SELECT * 内存太大,无法在单台 PC 上处理。

示例:

选择 *
从双
WHERE GROUP_NAME = %s

返回此错误:

(cx_Oracle.DatabaseError) ORA-00911: invalid character ... WHERE GROUP_NAME = %s

最佳答案

如你所见here , cx_Oracle.paramstylenamed 而不是 format。根据PEP 249你必须为 named 使用 :name 语法 paramstyle:

import pandas as pd
sql = '''
SELECT *
FROM DUAL
WHERE GROUP_NAME = :name
'''
df = pd.read_sql(sql, params={'name': the_name_you_want})

关于python - 将变量绑定(bind)到 Pandas.read_sql 的 SQLAlchemy 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51790471/

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