PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come indicare che una colonna non ammette valori nulla durante la creazione di una vista materializzata?

La sintassi non lo supporta nei moduli CREATE o ALTER così com'è oggi. Immagino, ma poiché l'istruzione CREATE MATERIALIZED VIEW accetta qualsiasi query, non può copiare in modo affidabile i vincoli non nulli dalla tabella di riferimento.

Puoi comunque AGGIORNARE lo stesso pg_catalog.pg_attribute per fare quello che vuoi.

UPDATE pg_catalog.pg_attribute 
SET attnotnull = true
WHERE attrelid = the_oid_of_the_published_at_column;