🧚 Ei! O Beekeeper Studio é uma GUI de banco de dados rápida, moderna e open source Download
29 de abril de 2024 Por Matthew Rathbone

Introdução

Adicionar uma chave primária a uma tabela existente no PostgreSQL é uma tarefa que administradores de banco de dados e desenvolvedores realizam para garantir a integridade dos dados e otimizar o desempenho do banco. Este tutorial mostra o passo a passo para adicionar uma chave primária a uma tabela existente no PostgreSQL, explicando os comandos SQL necessários e os cuidados a tomar.

Pré-requisitos

  • Acesso a um banco de dados PostgreSQL
  • Privilégios suficientes para alterar a estrutura de tabelas
  • Conhecimento básico de SQL e de conceitos de banco de dados

Entendendo chaves primárias

Uma chave primária é uma coluna ou um grupo de colunas usado para identificar de forma única cada linha de uma tabela. Ela deve conter valores únicos e não pode conter valores NULL. Uma tabela pode ter apenas uma chave primária.

Passo 1: verifique a estrutura atual da tabela

Antes de adicionar uma chave primária, confira a estrutura atual da tabela para confirmar que ela ainda não tem uma e decidir qual(is) coluna(s) pode(m) servir como chave.

Você pode fazer isso de duas formas: pela linha de comando ou visualmente no Beekeeper Studio.

Opção 1 — Usando o psql

-- Replace 'your_table' with your table name
\d your_table

Isso exibe as colunas, os índices e as constraints da tabela diretamente no psql.

Opção 2 — Usando o Beekeeper Studio

Clique com o botão direito na sua tabela no Beekeeper Studio e selecione View Structure para ver todas as colunas, índices e constraints visualmente.

Beekeeper Studio mostrando a estrutura de uma tabela customer do PostgreSQL, com customer_id marcada como chave primária

Passo 2: escolha a coluna adequada

Escolha uma coluna que com certeza seja única para cada linha. Se essa coluna não existir, talvez você precise criar uma nova coluna ou usar uma combinação de colunas para formar uma chave composta.

Passo 3: adicione uma chave primária

Chave primária de coluna única

Se você escolher uma única coluna que identifica de forma única cada linha, e estiver conectado ao banco de dados correto, pode usar a seguinte sintaxe SQL:

-- Replace 'your_table' and 'column_name' with your actual table name and column name
ALTER TABLE your_table
ADD PRIMARY KEY (column_name);

Por exemplo, se você quiser adicionar uma chave primária a uma tabela chamada customer que tem as colunas customer_id, first_name e last_name, pode usar o seguinte comando ALTER TABLE:

ALTER TABLE customer ADD PRIMARY KEY (customer_id);

Isso cria uma chave primária na coluna customer_id.

Como adicionar uma chave primária composta a uma tabela existente

Como alternativa, você pode criar uma chave primária composta, formada por várias colunas, assim:

ALTER TABLE customer ADD PRIMARY KEY (first_name, last_name);

Isso cria uma chave primária formada pelas colunas first_name e last_name.

Passo 4: verifique a nova chave primária

Depois de adicionar a chave primária, é importante verificar se ela foi aplicada corretamente à tabela.

-- Check the constraints on the table to confirm the primary key exists
SELECT conname, contype
FROM pg_constraint
WHERE conrelid = 'your_table'::regclass;

Se você prefere usar uma GUI, o Beekeeper Studio exibe automaticamente um ícone de chave ao lado da coluna primária na aba Structure assim que a constraint é adicionada.

Saída esperada usando customer

           conname            | contype
------------------------------+---------
 customer_pkey                | p
 customer_support_rep_id_fkey | f

contype p indica uma constraint de chave primária.

Cuidados ao adicionar uma chave primária

  • Unicidade dos dados: garanta que a(s) coluna(s) que você vai transformar em chave primária tenha(m) dados únicos em todas as linhas.
  • Desempenho: adicionar uma chave primária em tabelas grandes pode consumir muitos recursos e levar tempo. Considere janelas de manutenção para tabelas grandes.
  • Integridade dos dados: depois que a constraint de chave primária é adicionada, qualquer operação de insert ou update que tente inserir valores duplicados resultará em erro.

Resumo

Adicionar uma chave primária a uma tabela existente no PostgreSQL ajuda a manter a integridade dos dados e a melhorar o desempenho.

Seja com SQL na linha de comando ou com um fluxo visual, ferramentas como o Beekeeper Studio facilitam inspecionar seu schema, verificar novas constraints e evitar erros.

Precisa verificar sua sintaxe SQL antes de executar? Experimente nosso SQL Syntax Checker gratuito — e, quando estiver pronto para aplicar as alterações, abra seu banco de dados no Beekeeper Studio para ver os resultados na hora.

Baixe o Beekeeper Studio →

Beekeeper Studio é um cliente de banco de dados gratuito e open source

A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão do Beekeeper para Linux tem 100% dos recursos, sem atalhos e sem concessões.

O que os usuários dizem sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e torna o trabalho com banco de dados agradável de novo."
— Alex K., Desenvolvedor de Banco de Dados
★★★★★
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., Engenheira Full Stack

Pronto para melhorar seu fluxo de trabalho com SQL?

download Baixe grátis