O que são chaves primárias e estrangeiras no SQL?

As chaves primárias e estrangeiras são usadas no SQL para identificar registros e estabelecer relacionamentos entre tabelas.

O que são chaves primárias e estrangeiras no SQL?

No SQL, as chaves primárias e chaves estrangeiras são fundamentais para garantir a integridade dos dados e organizar corretamente o relacionamento entre tabelas.

O que é uma chave primária?

Uma chave primária (PRIMARY KEY) é um identificador único para cada registro dentro de uma tabela. Ela garante que os valores dessa coluna nunca se repitam e que nenhum registro tenha um valor NULL.

Exemplo de chave primária:

CREATE TABLE clientes (
    id_cliente INT PRIMARY KEY,
    nome VARCHAR(100) NOT NULL,
    email VARCHAR(100) UNIQUE
);

Neste exemplo:

  • id_cliente é a chave primária da tabela clientes, garantindo que cada cliente tenha um identificador único.
  • O banco de dados não permitirá valores duplicados ou nulos na coluna id_cliente.

O que é uma chave estrangeira?

Uma chave estrangeira (FOREIGN KEY) é uma referência a uma chave primária de outra tabela. Seu objetivo é criar um vínculo entre os dados, garantindo que os registros estejam corretamente relacionados.

Exemplo de chave estrangeira:

CREATE TABLE pedidos (
    id_pedido INT PRIMARY KEY,
    id_cliente INT,
    valor DECIMAL(10,2),
    FOREIGN KEY (id_cliente) REFERENCES clientes(id_cliente)
);

Neste exemplo:

  • id_cliente na tabela pedidos é uma chave estrangeira que se refere à chave primária id_cliente da tabela clientes.
  • Isso significa que um pedido sempre estará vinculado a um cliente válido.
  • Se tentarmos inserir um pedido com um id_cliente que não existe na tabela clientes, o banco de dados impedirá essa operação.

Diferença entre chave primária e estrangeira

Característica Chave Primária Chave Estrangeira
Valor único? Sim Não necessariamente
Aceita valores NULL? Não Sim (caso permitido)
Relaciona tabelas? Não Sim

As chaves primárias e estrangeiras são essenciais para um banco de dados relacional bem estruturado. Elas garantem integridade referencial e evitam inconsistências nos dados.

O conceito de chaves primárias e estrangeiras é um dos mais importantes dentro de bancos de dados relacionais. Sem essas regras de integridade, os dados poderiam ficar desorganizados e sem conexão, tornando as consultas mais complexas e a gestão dos registros muito menos eficiente. Utilizar essas chaves corretamente permite que grandes sistemas, como ERPs e CRMs, gerenciem milhões de registros de forma confiável. Além disso, elas são essenciais para evitar a duplicação de informações e manter a consistência das tabelas, facilitando a análise e recuperação de dados.

Algumas aplicações:

  • Relacionamento entre clientes e pedidos em sistemas de e-commerce
  • Organização de dados em bancos de universidades e empresas
  • Criação de sistemas de login onde usuários possuem múltiplos dispositivos
  • Manutenção da integridade em registros financeiros
  • Facilidade na busca e manipulação de dados em aplicações web

Dicas para quem está começando

  • Sempre defina uma chave primária para identificar registros de forma única
  • Use chaves estrangeiras para conectar tabelas e evitar duplicação de dados
  • Aprenda sobre restrições como ON DELETE CASCADE para manipular registros relacionados
  • Evite usar colunas que podem se repetir como chaves primárias, prefira IDs únicos
  • Pratique criando tabelas relacionadas para entender melhor como os dados se conectam

Contribuições de Carla Nunes

Compartilhe este tutorial: O que são chaves primárias e estrangeiras no SQL?

Compartilhe este tutorial

Continue aprendendo:

Como criar uma tabela no SQL?

Criar uma tabela no SQL envolve definir colunas, tipos de dados e restrições usando o comando CREATE TABLE.

Tutorial anterior

Como inserir dados em uma tabela SQL?

O comando INSERT INTO permite adicionar novos registros em tabelas SQL, especificando colunas e valores.

Próximo tutorial