Да, нещата могат да се объркат.
Postgres никога не би позволил това състояние чрез DDL команди и поведението му сега е основно недефинирано.
От една страна, всеки материализиран изглед се очаква да има свързана дефиниция и така pg_dump
сега се срива, оплаквайки се, че definition of view "t" appears to be empty (length zero)
.
Вашият „материализиран изглед“ също може да има стойности по подразбиране на колони, ограничения, тригери и много други неща, които никога не биха били разрешени чрез DDL, което може да причини собствен набор от проблеми.
Ако искате да направите таблица само за четене, задайте съответните разрешения или отхвърлете всякакви промени в тригер .