Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/04/2008, 14h35   #1
Membre du Club
 
Inscription : février 2007
Messages : 382
Détails du profil
Informations personnelles :
Âge : 23

Informations forums :
Inscription : février 2007
Messages : 382
Points : 41
Points : 41
Par défaut Problème clé étrangère.

Bonjour,

j'ai un petit problème de clé étrangère. La structure de mes deux tables est la suivantes :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
CREATE TABLE toto(
    ID INT PRIMARY KEY,
    IDF INT NULL,
    TITRE TEXT
) ;
 
CREATE TABLE tata(
    ID INT PRIMARY KEY,
    IDF INT,
    TITRE TEXT
) ;
 
ALTER TABLE toto
ADD FOREIGN KEY (idf) REFERENCES tata(ID);
ALTER TABLE tata
ADD FOREIGN KEY (idf) REFERENCES toto(ID);
 
INSERT INTO toto VALUES(01,NULL,'test');
INSERT INTO tata VALUES(01,NULL,'test');
Je m'attendais a voir un problème sur la 2ème requêtes or il n'y a aucun problème. Pourquoi ?

merci
damien77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2008, 18h21   #2
Membre Expert
 
Avatar de scheu
 
Inscription : juin 2007
Messages : 1 497
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 1 497
Points : 1 485
Points : 1 485
Idf peut valoir null , dans ce cas il ne référence aucune ligne de la table parent, c'est tout. Une colonne d'une FK peut valoir NULL (à moins de mettre une contrainte NOT NULL, dans ce cas tu serais obligé de mettre une valeur référençant un ID existant dans la table parent)
__________________
La théorie, c'est quand on sait tout mais que rien ne fonctionne.
La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/
scheu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h03.


 
 
 
 
Partenaires

Hébergement Web