Une clé étrangère peut-elle être nulle Postgres ?
Une clé étrangère peut-elle être nulle Postgres ?

Vidéo: Une clé étrangère peut-elle être nulle Postgres ?

Vidéo: Une clé étrangère peut-elle être nulle Postgres ?
Vidéo: SQL ET POSTGRE 3.4 : Les clés primaires et étrangères 2024, Novembre
Anonim

INSÉRER DANS LES VALEURS du produit (11, 'pour Joe', 1); INSÉRER DANS LES VALEURS du produit (22, 'pour tous', NUL ); Il est parfaitement légal d'avoir un nullable clé étrangère colonne.

La question est également: une clé étrangère peut-elle être nulle ?

UNE clé étrangère rend sa table dépendante d'une autre table appelée table parent. UNE clé étrangère contenant nul les valeurs ne peuvent pas correspondre aux valeurs d'un parent clé , puisqu'un parent clé par définition pouvez n'a pas nul valeurs. Cependant, un clé étrangère nulle valeur est toujours valide, quelle que soit la valeur de l'un de ses non- nul les pièces.

De plus, comment ajouter une clé étrangère dans PostgreSQL ? AJOUTER CONSTRAINT nom_contrainte CLÉ ÉTRANGÈRE (c1) RÉFÉRENCES parent_table (p1); Une dernière note quand vous voulez ajouter une clé étrangère contrainte avec ON DELETE CASCADE à la table existante, vous devez suivre les étapes suivantes: Supprimer l'existant clé étrangère contrainte. Ajouter un nouveau clé étrangère contrainte avec l'action ON DELETE CASCADE.

Alors, une clé étrangère peut-elle être null mysql ?

5 réponses. NULL dans clés étrangères sont parfaitement acceptables. Traiter les valeurs NULL dans clés étrangères est délicat, mais cela ne signifie pas que vous modifiez ces colonnes en NON NUL et insérez des enregistrements factices ("N/A", "Inconnu", "Aucune valeur", etc.) dans vos tables de référence.

Des clés étrangères sont-elles nécessaires ?

Étant donné que le but de la étranger clé est d'identifier une ligne particulière de la table référencée, il est généralement obligatoire que le étranger la clé est égale au candidat entrer une ligne de la table primaire, ou bien n'ont pas de valeur (la valeur NULL.). Cette règle est appelée contrainte d'intégrité référentielle entre les deux tables.

Conseillé: