在 Redshift 中,如何查看架构的创建位置?



我在刚刚创建的红移集群中运行以下命令:

CREATE SCHEMA myschema;
CREATE TABLE myschema.mytable (
mytable_id INT IDENTITY,
name varchar(5)
) ;
INSERT INTO myschema.mytable (name) VALUES ('BOB'); 
SELECT DISTINCT(tablename) FROM pg_table_def WHERE SCHEMANAME = 'myschema';

我没有得到任何结果。pg_table_def不是我应该找到我的表信息的地方吗?

这是标准行为,redshift只显示

PG_TABLE_DEF仅返回有关用户可见的表的信息。如果PG_TABLE_DEF未返回预期结果,请验证是否正确设置了 search_path 参数以包含相关架构。

请参阅文档链接。 https://docs.aws.amazon.com/redshift/latest/dg/r_PG_TABLE_DEF.html

其他原因可能是搜索路径。 尝试设置搜索路径并再次运行它。

希望对您有所帮助。

最新更新