Gestion des valeurs Null

L'élément NullRequired spécifie le caractère obligatoire d'une colonne. Cet élément est utilisé avec la variable de colonne NULLNOTNULL, qui peut prendre la valeur "null" "not null" ou une valeur vide. Les combinaisons suivantes sont possibles :

Lorsque la colonne est obligatoire

"not null" est systématiquement généré lorsque NullRequired est défini à True ou False comme illustré dans l'exemple suivant :

create domain DOMN_MAND char(33) not null;
create domain DOMN_NULL char(33)   null;

create table TABLE_1 
(
 COLN_MAND_1 char(33)  not null,
 COLN_MAND_2 DOMN_MAND not null,
 COLN_MAND_3 DOMN_NULL not null,
);

Lorsque la colonne n'est pas obligatoire

  • Si NullRequired est défini à True, "null" est généré. L'entrée NullRequired doit être utilisée dans ASE par exemple, puisque la possibilité d'être null ou non y est une option de base de données, et que les mots clés "null" ou "not null" sont requis.

    Dans l'exemple suivant, toutes les valeurs "null" sont générées :

create domain DOMN_MAND char(33) not null;
create domain DOMN_MAND char(33)   null;

create table TABLE_1 
(
 COLN_NULL_1 char(33)  null,
 COLN_NULL_2 DOMN_NULL   null,
 COLN_NULL_3 DOMN_MAND   null
)
  • Si NullRequired est défini à False, une chaîne vide est générée. Toutefois, si une colonne attachée à un domaine obligatoire devient non obligatoire, "null" sera généré.

    Dans l'exemple suivant, "null" est généré uniquement pour COLUMN_NULL3 car cette colonne utilise le domaine obligatoire, les autres colonnes générant une chaîne vide :

create domain DOMN_MAND char(33) not null;
create domain DOMN_NULL char(33)   null;

create table TABLE_1 
(
 COLUMN_NULL1 char(33)    ,
 COLUMN_NULL2 DOMN_NULL   ,
 COLUMN_NULL3 DOMN_MAND   null
);