PGCasts

Tutoriais em vídeo sobre PostgreSQL

Alterando colunas de tipos conflitantes no PostgreSQL

Neste episódio demonstro como alterar colunas de tabelas quando o tipo de destino é conflitante. Nem sempre é possível fazer isso diretamente, por isso é necessário utilizar alguns artifícios.

Mais informações:

Comandos:

BEGIN;
ALTER TABLE contatos ALTER cpf TYPE numeric USING CAST(cpf AS numeric);
ALTER TABLE contatos ALTER idade TYPE date USING NULL;
ALTER TABLE contatos RENAME total_dias_cadstrado TO data_cadastro;
ALTER TABLE contatos ALTER data_cadastro DROP DEFAULT;
ALTER TABLE contatos ALTER data_cadastro TYPE date 
  USING current_date - CAST(data_cadastro||' days' as interval);
ALTER TABLE contatos ALTER data_cadastro SET DEFAULT now();
COMMIT;
  1. pgcasts posted this