-
cle primaire cle unique
Bonjour à tous,
Une question qui parait bête, mais quelle est la différence entre une clé primaire et une clé unique ??
Je m'explique, je veux mettre a jour une base de données.
La manipe : déplacer les indexes du tablespace users à un autre table space.
Pour ce faire, j'exporte les indexes, j'efface tous mes indexes, je creer le nouveau tablespace et je réimporte en lui spécifiant le nouveau tablespace_indexes
J'utilise sql developer pour exporter mes indexes.
Le problème, c'est que mes clé primaire deviennent des indexes uniques
Code:
CREATE UNIQUE INDEX "user"."matable_PK" ON "user"."matable" ("CODE1", "CODE2")
Merci
-
Une clé primaire est une clé qui est choisie pour être la primaire ET qui a une contrainte d'unicité, alors qu'une clé unique ça n'existe pas, on rajoute juste une contrainte d'unicité.
Comme la clé primaire est unique, elle possède un index qui est... unique.
-
Pour une table il ne peut y avoir qu'une contrainte clé primaire et plusieurs contraintes clés uniques (http://download-uk.oracle.com/docs/c...integ.htm#1836).
Quelle est votre version d'Oracle ? Plutôt que d'utiliser export/import (qui peut poser problème si les contraintes ont des noms générés par Oracle), il peut être plus facile d'utiliser ALTER INDEX:
Code:
ALTER INDEX <in> REBUILD TABLESPACE <tn>;