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

Compréhension de la clé primaire

Technique - général | Compréhension de la clé primaire

Par alci le 22/03/2006 - 13:25

Bonjour,

la doc de postgresql dit q'une contrainte Primary key est équivalente à unique + not null

Dans le cas d'une clé primaire sur plusieurs champs, qu'est-ce qui est not null : chacun des champs ou l'ensemble de ces champs ?

Désolé si cette question est un peu basique :-) et merci d'avance,

Franck

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.

Bon, après un rapide test, j

alci/ = 22 Mars, 2006 - 15:58

Bon, après un rapide test, je me réponds à moi-même :

si une contrainte de type primary key est posée sur plusieurs colonnes, chacune de ces colonnes doit être not null.

Ceci modifie donc ma question :

comment gérer une table pour laquelle la combinaison de plusieurs colonnes doit être unique, mais chaque colonne peut être nulle ?

Je peux créer :
- une contrainte unique(a,b,c) et un index sur (a,b,c)
- un index unique sur (a,b,c)

dans les deux cas, je n'ai pas de clé primaire (mais ce n'est pas grave, si ?)

Merci de vos commentaires...


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