通过python执行的Redshift查询不提供任何记录

2024-03-29 07:46:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我编写了下面的查询以通过Python执行。在

query="""SELECT DISTINCT count(*) FROM PG_TABLE_DEF WHERE schemaname='master'  AND tablename LIKE '%%tmp%%'; """
#print(query)

conn=func_redshiftconnection()
res=conn.execute(sqlalchemy.text(query))
res=res.fetchall()
print(res)                # Prints (0,)

它在数据库中工作得很好,但是当我使用psycopg2通过Python和SqlAlchemy执行它时,结果是0。在

我不明白可能是什么问题。谢谢你的阅读


Tags: andfrommasterdefcounttableresconn
1条回答
网友
1楼 · 发布于 2024-03-29 07:46:24

Redshift中的PG_TABLE_DEF只返回关于用户可见的表的信息,换句话说,它将只显示在变量search_path中定义的模式中的表。如果PG_TABLE_DEF未返回预期结果,请验证search_path参数是否设置正确,以包含相关架构。
源-PG_TABLE_DEF

试试这个-

mydb=# set search_path="$user",master;

然后运行查询-

^{pr2}$

如果我做了一个错误的假设,请评论,我会重新集中我的答案。在

相关问题 更多 >