2014-06-05 8:50 GMT-03:00 Bruno Silva <[email protected]>:

> Na verdade é recriação da VM, pois precisei mudar os filtros ( WHERE
> ). Com isso tenho de dropar a VM e recriá-la.
>

Ah... Desculpe, entendi completamente errado, achei que referia-se ao
REFRESH.

Apesar de que a resposta continua a mesma: não... :'(

Uma coisa que pode fazer, é, ao invés de usar uma MV, usar uma tabela
normal. Para facilitar eu criaria uma view antes com o sua query
encapsulada, e daí pra criar a fake-MV:

    CREATE TABLE mv_foo AS SELECT * FROM foo;

E para atualizá-la, você edita normalmente a view foo e depois:

    BEGIN;
    TRUNCATE mv_foo;
    INSERT INTO mv_foo SELECT * FROM foo;
    COMMIT;

E pronto.

É claro que dependendo do que você quer mudar, pode ser melhor simplesmente
criar a MV com o máximo de resultados e filtrá-los posteriormente.

Atenciosamente,
-- 
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a