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.