No Redshift, por que minha tabela não aparece na consulta a seguir? Definitivamente existe, como mostra a próxima consulta que eu corro. Eu quero uma maneira de listar todas as tabelas para um esquema:
mydb=# select distinct(tablename) from pg_table_def where schemaname = 'db';
tablename
-----------
(0 rows)
mydb=# \d db.some_table
Table "db.some_table"
Column | Type | Modifiers
-----------------+-----------------------------+-----------
...correct info shows up here...
...but nothing showed up above?
select schemaname, tablename from pg_table_def
:?Respostas:
PG_TABLE_DEF no Redshift retorna apenas informações sobre tabelas visíveis ao usuário; em outras palavras, mostrará apenas as tabelas que estão nos esquemas definidos na variável search_path. Se PG_TABLE_DEF não retornar os resultados esperados, verifique se o parâmetro search_path está definido corretamente para incluir os esquemas relevantes.
Tente isto -
Em seguida, execute sua consulta -
fonte
PG_TABLE_DEF retornará apenas informações para tabelas em esquemas incluídos no caminho de pesquisa. Ligação
fonte