Sustituir vistas materializadas

Si la tabla base para una vista materializada cambia de forma que afecta a una vista materializada para esa tabla, es posible que los usuarios vean el siguiente error para las consultas que utilizan la vista:
ERROR:  Base table/view 'WEATHER' attr 'CITY' has changed (precision); 
rebuild view 'WEATHER_V'

Este error indica que la columna denominada CITY de la tabla base WEATHER ha cambiado. En este ejemplo, la columna ha cambiado de VARCHAR(80) a VARCHAR(100). Como resultado, la vista materializada debe reconstruirse para reflejar la definición de tabla base actual.

Para reconstruir una vista después de que cambia una tabla base, utilice el comando CREATE OR REPLACE MATERIALIZED VIEW para actualizar la vista, de la siguiente manera:

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

No descarte y vuelva a crear la vista materializada porque esos pasos dan como resultado una vista nueva con un ID de objeto diferente, que puede afectar a otros objetos que hacen referencia a la vista materializada.