【发布时间】:2016-05-16 17:33:59
【问题描述】:
我正在使用 PyODBC 通过名为 cnxn 的连接连接到 Oracle。
我有一个唯一标识符列表: list1 = [1234, 2345, 3456, 4567]
我也有疑问:
query1 = """
select * from tablename where unique_id = ?
""'
我想做的是使用这个标识符列表来创建一个熊猫数据框。
作为测试,我这样做了:
testid = "1234" (since Oracle wants a string as that id not an integer)
但是,当我这样做时:
pd.read_sql(query1, cnxn, params = testid)
我得到 “sql 包含 1 个参数标记,但提供了 4 个。”
最终,我希望能够做这样的事情:
for i in list1:
newdataframe.append(pd.read_sql(query1, cnxn, params = i))
并让它吐出一个数据框。
我已经阅读了 PyODBC 上的文档,它看起来像是指定的?作为参数。 我还查看了this question,它很相似,但我需要能够将结果输入到 Pandas 数据框中以进行进一步操作。
我想如果我能让 testid 工作,我就会走上正轨。
谢谢
【问题讨论】:
-
刚刚更新为在解析查询后添加单引号。