Substituir as visualizações materializadas

Se a tabela base para uma visualização materializada mudar de uma maneira que afete uma visualização materializada para essa tabela, os usuários poderão ver o seguinte erro para consultas que usam a visualização:
ERROR:  Base table/view 'WEATHER' attr 'CITY' has changed (precision); 
rebuild view 'WEATHER_V'

Esse erro indica que a coluna denominada CITY na tabela base WEATHER mudou. Nesse exemplo, a coluna mudou de VARCHAR(80) para VARCHAR(100). Como resultado, a visualização materializada deve ser reconstruída para refletir a definição de tabela base atual.

Para reconstruir uma visualização após uma mudança de tabela base, use o comando CREATE OR REPLACE MATERIALIZED VIEW para atualizar a visualização, conforme a seguir:

MYDB.SCHEMA(ADMIN)=> CREATE OR REPLACE MATERIALIZED VIEW weather_v AS SELECT 
city, temp_lo, temp_hi FROM weather ORDER BY city;
CREATE MATERIALIZED VIEW

Não descarte e recrie a visualização materializada porque essas etapas resultam em uma nova visualização com um ID de objeto diferente, o que pode afetar outros objetos que referenciam a visualização materializada.