PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

Contraintes différées

Technique - général | Contraintes différées

Par sbouchard le 07/11/2006 - 12:30

Bonjour,
Selon la documentaiton, il est possible de différer la vérification d'une contrainte clé étrangère à la fin de la transaction.
Bizarrement, lorsque le nom de ma contrainte se termine par la lettre "s" il m'est impossible de différer sa vérification.
J'utilise la version 8.1.4 de PostgreSQL sur Windows Server 2003,

Exemple :
CREATE TABLE Familles (
Numero INTEGER,
Prenom VARCHAR (30),
Sexe CHAR,
NumConjoint INTEGER,
CONSTRAINT PK_Familles PRIMARY KEY (Numero),
CONSTRAINT FK_Familles_Conjoints FOREIGN KEY (NumConjoint)
REFERENCES Familles (Numero) DEFERRABLE
);
START TRANSACTION ;
SET CONSTRAINTS FK_Familles_Conjoints DEFERRED;
-- ERROR: constraint "fk_familles_conjoints" is not deferrable

Le simple de fait de nommer la contrainte FK sans "s" final donne le résultat attendu....!!!

Quelqu'un a-t-il une explication à ce drôle de phénomène?
Merci
Sylvie

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Etrange en effet

SAS/ = 7 Novembre, 2006 - 15:10

Bonjour,

je viens de faire le test sur PG 8.1.4 sous Linux. Quelque soit le nom et la longueur du nom de la contrainte, j'arrive à différer la vérification de la contrainte.

Librement,
Stéphane Schildknecht


8.1.3 fonctionne aussi correc

sparky/ = 9 Novembre, 2006 - 00:21

8.1.3 fonctionne aussi correctement (Linux)


© PostgreSQLFr, tous droits réservés.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.