Sobes.tech
Middle

Como implementar a nível físico uma relação um-para-um entre duas tabelas?

sobes.tech IA

Resposta da IA

A relação um-para-um entre duas tabelas ao nível físico é implementada de várias maneiras:

  1. Chave primária comum — ambas as tabelas têm o mesmo valor de chave primária, e numa delas essa chave também funciona como chave estrangeira para a outra tabela.

  2. Chave estrangeira única — numa tabela, é criada uma chave estrangeira para outra tabela com restrição UNIQUE, para garantir que a cada registo corresponda no máximo um registo na tabela relacionada.

Exemplo com chave primária comum:

CREATE TABLE Pessoa (
    PessoaID INT PRIMARY KEY,
    Nome VARCHAR(100)
);

CREATE TABLE Passaporte (
    PessoaID INT PRIMARY KEY,
    NumeroPassaporte VARCHAR(50),
    FOREIGN KEY (PessoaID) REFERENCES Pessoa(PessoaID)
);

Aqui, para cada registo em Pessoa, pode haver no máximo um registo em Passaporte, e vice-versa.