PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como altero a posição de uma coluna em uma tabela do banco de dados PostgreSQL?


"Alterar posição da coluna" no PostgreSQL Wiki diz:

O PostgreSQL atualmente define a ordem das colunas com base no attnum coluna do pg_attribute tabela. A única maneira de alterar a ordem das colunas é recriando a tabela ou adicionando colunas e girando dados até chegar ao layout desejado.

Isso é muito fraco, mas em sua defesa, no SQL padrão, também não há solução para reposicionar uma coluna. As marcas de banco de dados que suportam a alteração da posição ordinal de uma coluna estão definindo uma extensão para a sintaxe SQL.

Uma outra ideia me ocorre:você pode definir um VIEW que especifica a ordem das colunas como você gosta, sem alterar a posição física da coluna na tabela base.