A instrução ALTER TABLE é usada para modificar a estrutura de uma tabela existente. Para renomear uma coluna, você usará a cláusula RENAME COLUMN.
Antes de continuar lendo, queria apresentar nosso cliente PostgreSQL moderno, o Beekeeper Studio. Você pode renomear uma coluna editando o nome dela no editor de estrutura da tabela, e ele é gratuito para PostgreSQL. Baixe aqui.
Sintaxe:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
Exemplo:
Suponha que você tenha uma tabela employees com a seguinte estrutura:
CREATE TABLE employees (
id SERIAL PRIMARY KEY,
firstname VARCHAR(50),
lastname VARCHAR(50),
dob DATE
);
Para renomear a coluna dob para birthdate, você usaria o seguinte comando:
ALTER TABLE employees RENAME COLUMN dob TO birthdate;
Guia passo a passo
1. Verifique a estrutura atual da tabela
Primeiro, certifique-se de conhecer a estrutura atual da tabela. Você pode usar o comando \d no psql ou o pgAdmin para descrever a tabela.
\d employees
Saída:
Column | Type | Collation | Nullable | Default
-----------+-----------------------+-----------+----------+--------------------------------------
id | integer | | not null | nextval('employees_id_seq'::regclass)
firstname | character varying(50) | | |
lastname | character varying(50) | | |
dob | date | | |
2. Renomeie a coluna
Execute o comando ALTER TABLE para renomear a coluna.
ALTER TABLE employees RENAME COLUMN dob TO birthdate;
3. Verifique a alteração
Descreva a tabela novamente para confirmar que a coluna foi renomeada.
\d employees
Saída:
Column | Type | Collation | Nullable | Default
-----------+-----------------------+-----------+----------+--------------------------------------
id | integer | | not null | nextval('employees_id_seq'::regclass)
firstname | character varying(50) | | |
lastname | character varying(50) | | |
birthdate | date | | |
Considerações
- Dependências: renomear uma coluna não atualiza automaticamente as referências a ela em views, funções, triggers ou outros objetos do banco de dados. Você precisará atualizar esses objetos manualmente.
- Permissões: certifique-se de ter as permissões necessárias para alterar a estrutura da tabela.
- Backup: sempre faça um backup do seu banco de dados antes de alterar o schema.
Usando o Beekeeper Studio para renomear colunas
O Beekeeper Studio é uma alternativa com interface gráfica para quem não quer trabalhar diretamente com instruções SQL. Editor SQL e gerenciador de banco de dados open source, o Beekeeper Studio torna fácil e rápido renomear colunas no PostgreSQL.
Renomeando uma coluna com o Beekeeper Studio:
- Conecte-se ao seu banco de dados PostgreSQL.
- Navegue até a tabela desejada.
- Todas as suas colunas são listadas; escolha a que deseja renomear e simplesmente clique nela.
- Digite o novo nome e pressione Enter.
O Beekeeper Studio cuida de todos os comandos SQL para você. Além disso, ele é compatível com muitos outros dialetos SQL, então você pode migrar tranquilamente para qualquer outro ambiente SQL.
Conclusão
Renomear uma coluna no PostgreSQL pode melhorar a legibilidade e a manutenibilidade do schema do seu banco de dados. É um processo simples, seja com os comandos ALTER TABLE … RENAME COLUMN ou com um editor SQL como o Beekeeper Studio. Lembre-se de verificar e atualizar quaisquer dependências antes de renomear colunas para evitar erros em tempo de execução.
Outros posts que você pode gostar:
O Beekeeper Studio é uma GUI para PostgreSQL gratuita e open source
Este é o cliente PostgreSQL que eu estava procurando! A interface é o que o diferencia: limpa, intuitiva e poderosa. Adeus, PGAdmin desajeitado. - David Cyprian
O Beekeeper Studio é um cliente PostgreSQL rápido, intuitivo e fácil de usar. Ele também suporta vários outros bancos de dados e funciona muito bem no Windows, Mac e Linux.
O que os usuários de PostgreSQL dizem sobre o Beekeeper Studio
Diferente do pgAdmin, o Beekeeper é incrivelmente simples de usar sem deixar a desejar em recursos, e o preço é justo! O recurso de backup do banco de dados é especialmente útil. Simplesmente um ótimo software.
Ferramenta fabulosa, a IDE mais prática que encontrei até hoje para administrar bancos Postgres e MySql - simplesmente funciona, sem complicação :-)