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:
CREATE SCHEMA nombre;postgresqlEsta 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, pode adicioná-la a um esquema PostgreSQL já existente. A sintaxe correspondente é a seguinte:
CREATE TABLE tuschema.nuevatabla(
...
);postgresqlPara ilustrar este processo, vamos mostrar-lhe como criar primeiro um esquema com o nome «Clientes». Eis o código:
CREATE SCHEMA clientes;postgresqlEm seguida, crie uma nova tabela chamada «Listadeclientes_España», que poderá inserir no esquema «Clientes» do PostgreSQL. Para tal, utilize este código:
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)
);postgresqlIsto 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.
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:
DROP SCHEMA clientes;postgresqlSe pretender eliminar um esquema e todos os objetos que ele contém no PostgreSQL, este é o comando adequado:
DROP SCHEMA clientes CASCADE;postgresqlNo entanto, deve utilizar este comando com cuidado para não perder dados importantes.