# Esquema do PostgreSQL para combinar várias tabelas

No PostgreSQL, um esquema é utilizado para agrupar várias tabelas e, assim, organizar a base de dados de forma mais clara. O comando `CREATE SCHEMA` é utilizado para a sua criação. Além disso, um esquema criado pode ser eliminado a qualquer momento com `DROP SCHEMA`.

## O que é um esquema do PostgreSQL?

No PostgreSQL, um esquema é um **conjunto de várias tabelas**. Um esquema também pode conter índices, sequências, tipos de dados e funções, entre outros elementos, sendo, por isso, comparável a um diretório, embora, ao contrário deste último, não seja possível o aninhamento. Este método é utilizado sobretudo para simplificar a gestão de grandes bases de dados com numerosas tabelas. Na estrutura do sistema de gestão de bases de dados, existe um esquema PostgreSQL entre o nível da base de dados e o nível das tabelas individuais. A estrutura hierárquica geral é a seguinte:

- Instância (frequentemente designada por «servidor» no PostgreSQL), que pode conter várias bases de dados
- Base de dados
- Esquema
- Tabela
- Linha

Para criar um novo esquema no PostgreSQL, utiliza-se o comando `CREATE SCHEMA`. Posteriormente, o esquema será eliminado com o comando `DROP SCHEMA`. Ambos os comandos são descritos com mais pormenor neste artigo.

## Esquema do PostgreSQL: sintaxe básica

A sintaxe do comando ``CREATE SCHEMA` no PostgreSQL é a seguinte:

```postgresql
CREATE SCHEMA nombre;
```

Esta sintaxe dá a instrução para criar um esquema no PostgreSQL e atribui a esse esquema um nome próprio e único na base de dados.

## Atribuir um esquema PostgreSQL a novas tabelas

Se criar agora uma nova tabela com o comando [CREATE TABLE do PostgreSQL](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/postgresql-create-table/), pode adicioná-la a um esquema PostgreSQL já existente. A sintaxe correspondente é a seguinte:

```postgresql
CREATE TABLE tuschema.nuevatabla(
... 
);
```

Para ilustrar este processo, vamos mostrar-lhe como criar primeiro um esquema com o nome «Clientes». Eis o código:

```postgresql
CREATE SCHEMA clientes;
```

Em seguida, crie uma nova tabela chamada «Listadeclientes\_España», que poderá inserir no esquema «Clientes» do PostgreSQL. Para tal, utilize este código:

```postgresql
CREATE TABLE Clientes.Listadeclientes_España( 
ID INT PRIMARY KEY NOT NULL, 
NOMBRE VARCHAR(50) NOT NULL, 
PAÍS VARCHAR(50), 
DIRECCIÓN VARCHAR(255) 
);
```

Isto irá criar uma nova tabela vazia no esquema do PostgreSQL especificado com o nome «Clientes». Agora pode preenchê-la com valores utilizando o comando [INSERT INTO do PostgreSQL](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/postgresql-insert-into/).

Nota Se não for especificado nenhum esquema, as novas tabelas são automaticamente atribuídas ao esquema «public» por predefinição.

## Eliminar esquema com `DROP SCHEMA`

Claro, também tem a opção de eliminar um esquema do PostgreSQL. Se o esquema estiver vazio e, por isso, já não for necessário, basta utilizar o comando `DROP SCHEMA`. No nosso exemplo acima, ficaria assim:

```postgresql
DROP SCHEMA clientes;
```

Se pretender eliminar um esquema e todos os objetos que ele contém no PostgreSQL, este é o comando adequado:

```postgresql
DROP SCHEMA clientes CASCADE;
```

No entanto, deve utilizar este comando com cuidado para não perder dados importantes.


This is a markdown version of: [https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/esquema-do-postgresql/](https://www.ionos.com/pt-pt/digitalguide/servidores/configuracao/esquema-do-postgresql/) for AI/LLM consumption.