O catálogo pg_namespace armazena espaços de nome. O espaço de nomes é a estrutura subjacente aos esquemas SQL: cada espaço de nomes pode ter uma coleção separada de relações, tipos, etc. sem conflito de nomes.
Tabela 43-21. Colunas do catálogo pg_namespace
Nome | Tipo | Referencia | Descrição |
---|---|---|---|
nspname | name | Nome do espaço de nomes | |
nspowner | int4 | pg_shadow .usesysid | Dono do espaço de nomes |
nspacl | aclitem[] | Privilégios de acesso |
Exemplo de utilização:
SELECT * FROM pg_namespace; nspname | nspowner | nspacl --------------------+----------+--------------------------------------- pg_toast | 1 | (nulo) pg_temp_1 | 1 | (nulo) pg_catalog | 1 | {postgres=U*C*/postgres,=U/postgres} public | 1 | {postgres=U*C*/postgres,=UC/postgres} information_schema | 1 | {postgres=U*C*/postgres,=U/postgres} (5 linhas) SELECT catalog_name, schema_name, schema_owner FROM information_schema.schemata; catalog_name | schema_name | schema_owner --------------+--------------------+-------------- template1 | pg_toast | postgres template1 | pg_temp_1 | postgres template1 | pg_catalog | postgres template1 | public | postgres template1 | information_schema | postgres (5 linhas)