Sobes.tech
Junior

O que é uma chave estrangeira?

sobes.tech IA

Resposta da IA

A chave estrangeira (FOREIGN KEY) é uma restrição de integridade de dados em bases de dados relacionais. Ela cria uma ligação entre duas tabelas, referindo-se à chave primária (ou outra chave estrangeira) numa outra tabela.

Principais funções da chave estrangeira:

  • Garantir a integridade referencial: Assegura que os valores no campo da chave estrangeira existem no campo referenciado da tabela pai. Isto previne registos "órfãos".
  • Estabelecer relações entre tabelas: Define como os dados de diferentes tabelas estão relacionados.
  • Ações em cascata: Permite realizar automaticamente ações (eliminação ou atualização) na tabela filha quando os dados na tabela pai são alterados.

Exemplo de criação de uma chave estrangeira em SQL:

CREATE TABLE `encomendas` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `nome_cliente` VARCHAR(255),
    `id_produto` INT,
    FOREIGN KEY (`id_produto`) REFERENCES `produtos`(`id`)
);

CREATE TABLE `produtos` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `nome_produto` VARCHAR(255),
    `preco` DECIMAL(10, 2)
);

Neste exemplo, id_produto na tabela encomendas é uma chave estrangeira que faz referência a id na tabela produtos. Isto garante que cada encomenda esteja associada a um produto existente.