我在刚刚创建的红移集群中运行以下命令:
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
其他原因可能是搜索路径。 尝试设置搜索路径并再次运行它。
希望对您有所帮助。