[英]How to query Redshift to obtain all the schema names for a specific database
我知道数据库存在于模式中,但我正在使用现有设计。 我的针对 postgres 的旧查询如下。 我想为 Redshift 重新创建它。 或者一些帮助将数据库链接到模式。
select
d.datname database_name
,s.schema_name
from pg_catalog.pg_database d
inner join information_schema.schemata s on s.catalog_name = d.datname
where d.datname = @database_name
所以由于某种原因,“公共”模式不包含在 information_schema.schema 中。
我目前的解决方法是:
select cast(@database_name as char(150)) database_name,cast('public' as char(150)) schema_name
union all
select
cast(d.datname as char(150)) database_name
,cast(s.schema_name as char(150)) schema_name
from pg_catalog.pg_database d
inner join information_schema.schemata s on s.catalog_name = d.datname
where d.datname = @database_name
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.