Sobes.tech
Junior — Middle

Qual é a diferença entre criar um índice único e definir uma chave primária numa base de dados?

sobes.tech IA

Resposta da IA

A Chave Primária (Primary Key) é uma restrição que identifica de forma única cada registo numa tabela. Implica automaticamente a singularidade e não permite valores NULL. Pode haver apenas uma chave primária numa tabela.

O Índice Único (Unique Index) garante a singularidade dos valores numa ou várias colunas, mas ao contrário da chave primária, pode permitir valores NULL (dependendo do SGBD) e pode haver vários índices únicos numa tabela.

Principais diferenças:

  • Chave primária — é única, não permite NULL, uma por tabela, serve como identificador principal.
  • Índice único — garante a singularidade, pode permitir NULL, pode haver vários numa tabela, usado para assegurar a singularidade dos dados, mas não é obrigatório para a identificação.

Exemplo de criação de uma chave primária e de um índice único em SQL:

CREATE TABLE users (
    id INT PRIMARY KEY,
    email VARCHAR(255) UNIQUE
);

Aqui, id é a chave primária e email é um índice único.