【问题标题】:How can I access the content of the tables on a schema in SQL?如何访问 SQL 模式中表的内容?
【发布时间】:2021-05-18 13:11:47
【问题描述】:
我有一个到 Red Shift 数据库的 python 连接,它是用模式组织的。我能够访问所有模式名称和表名,但我无法在任何模式中加载任何特定表。似乎我可以连接到数据库,但我无法进一步浏览。有什么想法吗?
当我在不指定架构名称的情况下编写查询时,会出现以下错误:
UndefinedTable:关系“table_name”不存在
我正在使用 psycopg2 来建立连接。
提前致谢
【问题讨论】:
标签:
python
sql
amazon-redshift
【解决方案1】:
如果您不想在查询中使用架构名称,则需要为架构指定 search_path
假设我有schema1 和表table1,我的默认搜索路径是$user, public。如果我想查询table1我必须在查询中使用它
select * from schema1.table1;
但如果我在我的 search_path 中设置 schema1
set search_path to schema1;
那我可以这样查询
select * from table1;