Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

carolzinha

Select no Postgre

Recommended Posts

Olá Pessoal,

 

estou com uma dificuldade em trazer a descrição de um schema criado no Postgres.

Ex:

 

select distinct(schemaname) from pg_tables where schemaname 'in ('teste');

 

 

este select só irá me retornar teste quando no schema teste estiver pelo menos uma tabela.

a duvida é o seguinte, como que seria meu select se eu quiser trazer a descrição do schema teste sem ter criado nenhuma tabela.

 

 

Obrigada pela atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Carolzinha aaaaaaaaa....

 

Seu script tem um apostrofe a mais (antes do in), retire-o. Se existir um schemaname teste no seu PostgreSQL

a consulta trará os resultados, observe:

 

SELECT * FROM pg_tables WHERE schemaname in ('information_schema'); retornou o seguinte (no pgadminIII):

 

"information_schema";"sql_features";"postgres";"";f;f;f

"information_schema";"sql_implementation_info";"postgres";"";f;f;f

"information_schema";"sql_languages";"postgres";"";f;f;f

"information_schema";"sql_packages";"postgres";"";f;f;f

"information_schema";"sql_sizing";"postgres";"";f;f;f

"information_schema";"sql_sizing_profiles";"postgres";"";f;f;f

 

É isso.

 

abçs

 

:blink:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Carolzinha,

 

Complementando a resposta, você pode criar o schema e não criar nenhuma tabela. Neste caso o

SELECT não retornará nenhum registro, pois pg_table não sofreu nenhuma entrada table para o

schema.

 

Assim que você criar uma tabela (pelo menos), o PostgreSQL gerará uma entrada em pg_table, aí

sim o SELECT retornará o registro correspondente.

 

abçs

 

:wacko:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.