|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2003 Messages : 8 ![]() |
Bonjour,
Je voudrais creer une table contenant une clé étrangère et je voudrais que la valeur de la clé étrangère puisse être à null, car j'insère mes données dans la première table avant de remplir la table contenant la clé étrangère. ex: CREATE TABLE treatment (id_trt serial NOT NULL, name_trt varchar(70) NOT NULL,PRIMARY KEY (id_trt)); CREATE TABLE patient (id_pat serial NOT NULL, name_pat varchar(70) NOT NULL, id_trt integer null,PRIMARY KEY (id_pat ), foreign key (id_trt) REFERENCES treatment (id_trt) ON UPDATE CASCADE ON DELETE CASCADE ); Voila je veux insérer les données dans la table patient avant celles de la table traitement, et lorsque j'esaie j'ai un message d'erruer: ERROR: <unnamed> referential integrity violation - key referenced from patient not found in treatment Pourriez vous m'éclairer ?Merci |
|
|
00
|
|
|
#2 | |||
|
Membre habitué
![]() Inscription : mai 2003 Messages : 145 ![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2003 Messages : 8 ![]() |
Merci, mais cela ne change rien j'ai toujours le message d'erreur:
ERROR: fk_patient referential integrity violation - key referenced from patient not found in treatment quand j'essaie d'insérer des données dans la table patient en laissant la colonne id_trt vide |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : août 2003 Messages : 8 ![]() |
Désolée, en fait ca fonctionne bien ta solution.
Merci ! |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : août 2003 Messages : 8 ![]() |
En fait , je ne comprends pas trop où est la différence. En quoi le fait de donner un nom a la contrainte tout en gardant le reste autorise les valeurs nulles?
|
|
|
00
|
|
|
#6 | |
|
Membre habitué
![]() Inscription : mai 2003 Messages : 145 ![]() |
Citation:
l'erreur je crois c'est que t'avais rajouter NULL après ton champ |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com