> > Ocorre que, por baixo, não há como escapar do "update". Você pretende > fazer isso para ter um alter table mais "performático"? Ele não será, com o > default, muito mais rápido do que um update com as devidas otimizações > (desabilitar triggers e etc.), na teoria. > > >> O comando desse formato dá o erro: ERRO: não pode utilizar referência à >> coluna na expressão padrão >> >> Existe alguma forma de fazer isso sem a necessidade do update? >> > > Talvez haja outra possibilidade, mas como uma coisa é inerente à outra, > talvez não seja viável. Qual seria o problema que estás enfrentando para > evitar o update? > > O problema é que a tabela é grande (alguns milhões de registros e 80 colunas) e preciso adicionar 13 campos nela. Fiz o teste com um caso onde o campo será NOT NULL e terá um valor fixo e ficou bem mais rápido comparado com dar update posteriormente. Então creio que tenha sido mais rápido por ser um valor fixo.
Vou verificar se desabilitando as constraints o update fica mais rápido. Senão vou ver quanto demora pra criar a tabela com a estrutura necessária, copiar os dados e depois renomeá-la. Obrigado pelas dicas.
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
