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

Pourquoi dans PostgreSQL les valeurs nulles du tableau de type enum sont-elles autorisées ?

Vous pouvez ajouter une contrainte de vérification pour empêcher les éléments avec des valeurs NULL.

alter table my_table
  add constraint no_null_element 
  check (cardinality(my_column) = cardinality(array_remove(my_column, null)));

Une solution plus propre serait une relation un-à-plusieurs normalisée avec une colonne de clé étrangère définie comme not null