PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment indiquer qu'une colonne n'est pas nullable lors de la création d'une vue matérialisée ?

La syntaxe ne le prend pas en charge dans les formulaires CREATE ou ALTER tels qu'ils sont aujourd'hui. Je suppose, mais comme l'instruction CREATE MATERIALIZED VIEW accepte n'importe quelle requête, elle ne peut pas copier de manière fiable les contraintes non nulles de la table référencée.

Vous pouvez cependant METTRE À JOUR le pg_catalog.pg_attribute lui-même pour faire ce que vous voulez.

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