Senior
Como adicionar uma restrição de unicidade no PostgreSQL na combinação de duas colunas, onde os valores individualmente podem repetir-se, mas os pares não?
sobes.tech IA
Resposta da IA
No PostgreSQL, para garantir a unicidade da combinação de valores de duas colunas, utiliza-se a restrição UNIQUE neste par de colunas. Isso garante que cada par de valores seja único, mesmo que os valores individuais nas colunas possam repetir-se.
Exemplo de consulta SQL:
ALTER TABLE o_seu_nome_de_tabela
ADD CONSTRAINT unique_col1_col2 UNIQUE (coluna1, coluna2);
Se a tabela for criada do zero, pode-se especificar a restrição imediatamente:
CREATE TABLE o_seu_nome_de_tabela (
id SERIAL PRIMARY KEY,
coluna1 TIPO,
coluna2 TIPO,
-- outras colunas
CONSTRAINT unique_col1_col2 UNIQUE (coluna1, coluna2)
);
Assim, o banco de dados não permitirá inserir linhas com uma combinação repetida de valores nessas duas colunas.