Ja, saker kan gå fel.
Postgres skulle aldrig tillåta detta tillstånd genom DDL-kommandon, och dess beteende är nu i princip odefinierat.
För det första förväntas varje materialiserad vy ha en tillhörande definition, och så pg_dump
kraschar nu och klagar på att definition of view "t" appears to be empty (length zero)
.
Din "materialiserade vy" kan också ha kolumnstandarder, begränsningar, utlösare och många andra saker som aldrig skulle tillåtas via DDL, vilket kan orsaka deras egna problem.
Om du vill göra en tabell skrivskyddad, ställ in lämpliga behörigheter a> , eller avvisa alla ändringar i en trigger .