Chave Estrangeira
Em PostgreSQL, uma chave estrangeira (foreign key) é um campo ou um conjunto de campos em uma tabela que se refere à chave primária de outra tabela. A chave estrangeira estabelece uma relação entre as duas tabelas, permitindo que você mantenha a integridade referencial dos dados entre elas. Ou seja, garante que os valores na coluna que contém a chave estrangeira correspondam aos valores na coluna da chave primária na tabela referenciada.
Aqui está a sintaxe básica para criar uma chave estrangeira durante a criação de uma tabela:
CREATE TABLE tabela_filha (
id SERIAL PRIMARY KEY,
nome_da_coluna tipo_de_dado,
chave_estrang_capita nome_da_coluna_da_tabela_pai REFERENCES tabela_pai(nome_da_coluna_da_tabela_pai)
);
Neste exemplo:
tabela_filha
é a tabela que contém a chave estrangeira.id
é o campo que servirá como chave primária na tabelatabela_filha
.nome_da_coluna
é um campo na tabelatabela_filha
.tabela_pai
é a tabela à qual a chave estrangeira se refere.nome_da_coluna_da_tabela_pai
é a coluna na tabelatabela_pai
que é a chave primária referenciada pela chave estrangeira.
Se você já possui uma tabela e deseja adicionar uma chave estrangeira, você pode usar a seguinte sintaxe:
ALTER TABLE tabela_filha
ADD CONSTRAINT nome_da_chave_estrang_capita FOREIGN KEY (nome_da_coluna) REFERENCES tabela_pai(nome_da_coluna_da_tabela_pai);
Neste comando, nome_da_chave_estrang_capita
é o nome da chave estrangeira e nome_da_coluna
é o nome da coluna que será a chave estrangeira na tabela filha.
A chave estrangeira é uma ferramenta poderosa para garantir a integridade referencial em um banco de dados PostgreSQL. Ela assegura que os dados estejam consistentes e que as relações entre as tabelas sejam mantidas.