O PostgreSQL schema permite agrupar várias tabelas, facilitando a organização e administração de bancos de dados. Você pode criá-lo usando o comando CREATE SCHEMA. Caso não precise mais dele, remova-o com o comando DROP SCHEMA.

O que é PostgreSQL schema?

No PostgreSQL, um schema é uma coleção de tabelas. Ele também pode incluir índices, sequências, tipos de dados e funções, tornando-o similar a um diretório. No entanto, ao contrário dos diretórios, um schema não pode ser aninhado. Esse método de organização de objetos é especialmente útil para administrar bancos de dados que abrangem muitas tabelas.

Os schemas ficam situados entre o nível do banco de dados e as tabelas individuais. Esta é uma visão geral da estrutura hierárquica completa desse popular sistema de gerenciamento de banco de dados:

  1. Instância (frequentemente chamada de “servidor” no PostgreSQL, contém múltiplos bancos de dados)
  2. Banco de dados
  3. Schema
  4. Tabela
  5. Linha

Para criar um novo schema no PostgreSQL, use o comando CREATE SCHEMA. Para removê-lo, utilize DROP SCHEMA. Analisaremos os dois comandos a seguir.

Dedicated Server da IONOS

O encontro do hardware com a nuvem: servidor dedicado com nuvem integrada e cobrança por minuto, incluindo assistente pessoal!

  • Suporte 24 horas
  • Tráfego ilimitado
  • Certificado SSL

Qual é a sintaxe de um PostgreSQL schema?

A sintaxe para criar um schema no PostgreSQL é a seguinte:

CREATE SCHEMA nome;
postgresql

O comando acima instrui o PostgreSQL a criar um schema dentro do banco de dados. Ao inserir o comando, é preciso informar um nome único para o schema.

Como atribuir uma nova tabela a um PostgreSQL schema

Ao criar novas tabelas usando o comando PostgreSQL CREATE TABLE, é possível atribuí-las a um schema. Esta é a sintaxe para fazer isso:

CREATE TABLE seu_schema.nova_tabela (
…
);
postgresql

Para demonstrar como funciona, vamos criar um schema chamado clientes:

CREATE SCHEMA clientes;
postgresql

Em seguida, criaremos uma nova tabela chamada lista_clientes_brasil e a adicionaremos ao schema clientes:

CREATE TABLE clientes.lista_clientes_brasil (
id INT PRIMARY KEY NOT NULL,
nome VARCHAR(50) NOT NULL,
país VARCHAR(50),
endereço VARCHAR(255)
);
postgresql

Esse código criará uma tabela sem dados no schema schema clientes. Você poderá preenchê-la com dados usando o comando PostgreSQL INSERT INTO.

Nota

Se nenhum schema for especificado, as novas tabelas serão atribuídas automaticamente ao schema padrão (public).

Como excluir um schema com o comando DROP SCHEMA

Você também pode remover um PostgreSQL schema caso não precise mais dele. Se o schema estiver vazio, use o seguinte comando para fazer isso:

DROP SCHEMA clientes;
postgresql

Para excluir um schema e todos os objetos contidos nele, adicione a ação CASCADE:

DROP SCHEMA clientes CASCADE;
postgresql

A execução do comando acima removerá permanentemente o schema e todos os seus dados, portanto, use-o com cautela.

Este artigo foi útil?
Ir para o menu principal