O catálogo pg_namespace armazena os espaços de nomes. Um 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 de dados, etc., sem conflitos de nome.
Tabela 52.32. Colunas de pg_namespace
Coluna Tipo de dados Descrição |
|---|
Identificador da linha |
Nome do espaço de nomes |
Dono do espaço de nomes |
Privilégios de acesso; veja Privilégios para obter detalhes |
Exemplo 52.21. Exemplo do tradutor
Espaços de nomes
Uso do catálogo pg_namespace
para mostrar os espaços de nomes existentes,
e uso também do meta-comando \dnSx+
do psql com o mesmo objetivo.
ana=> \C 'Espaços de nomes'
O título é "Espaços de nomes".
ana=> SELECT
ana-> nspname,
ana-> nspowner::regrole,
ana-> nspacl
ana-> FROM pg_namespace\gx
Espaços de nomes
-[ RECORD 1 ]-----------------------------------------
nspname | pg_toast
nspowner | postgres
nspacl |
-[ RECORD 2 ]-----------------------------------------
nspname | pg_catalog
nspowner | postgres
nspacl | {postgres=UC/postgres,=U/postgres}
-[ RECORD 3 ]-----------------------------------------
nspname | public
nspowner | pg_database_owner
nspacl | {pg_database_owner=UC/pg_database_owner, ↵
| =U/pg_database_owner}
-[ RECORD 4 ]-----------------------------------------
nspname | information_schema
nspowner | postgres
nspacl | {postgres=UC/postgres,=U/postgres}
ana=> \dnSx+
Lista de esquemas
-[ RECORD 1 ]---------+---------------------------------------
Nome | information_schema
Dono | postgres
Privilégios de acesso | postgres=UC/postgres +
| =U/postgres
Descrição |
-[ RECORD 2 ]---------+---------------------------------------
Nome | pg_catalog
Dono | postgres
Privilégios de acesso | postgres=UC/postgres +
| =U/postgres
Descrição | system catalog schema
-[ RECORD 3 ]---------+---------------------------------------
Nome | pg_toast
Dono | postgres
Privilégios de acesso |
Descrição | reserved schema for TOAST tables