Je suis nouveau dans les SGBD et j'apprends toujours la théorie.
Je suis vraiment confus avec cette activité clé et après avoir googlé, je l'ai réduit à seulement 2 clés que je n'obtiens pas (clé principale et super clé).
J'ai quelques questions sur le SGBD. Je vous serais reconnaissant de bien vouloir me répondre pour moi.
1) Quelle est la différence entre la clé primaire et la super clé dans le SGBD? Je l'apprécie beaucoup si vous pouvez utiliser un exemple complet pour expliquer correctement
2) La clé primaire et la clé super peuvent- elles avoir plusieurs colonnes combinées pour former la clé primaire et la clé super?
3) La clé primaire est-elle un sous-ensemble de la clé Super ou vice versa?
Réponses:
Une Super Clé est simplement une Clé Candidate non minimale , c'est-à-dire une avec des colonnes supplémentaires non strictement requises pour assurer l'unicité de la ligne.
Une clé primaire est une clé candidate minimale , c'est-à-dire que toutes les colonnes constitutives sont strictement nécessaires pour garantir l'unicité.
En tant que développeur / concepteur de bases de données de 30 ans d'expérience, je n'avais jamais entendu le terme Super Key jusqu'à ce que je vois cette question et que je la recherche. Le concept de Super Key semble plus pertinent pour le sujet de la conception des performances et du schéma physique car il correspond directement au concept d'un index non cluster unique avec des colonnes supplémentaires pour une meilleure couverture des requêtes.
la source
Super Keys: Super key représente le sur-ensemble d'une clé. Une super clé est un ensemble d'un ou plusieurs attributs qui sont pris collectivement et peuvent identifier tous les autres attributs de manière unique.
Par exemple, nous avons une table
Donc, dans ce tableau, nous pouvons avoir
Comme notre super clé. Chaque super clé est capable d'identifier de façon unique chaque tuple (enregistrement).
Clés candidates Les clés candidates sont une super clé qui n'a pas d'attributs redondants. En d'autres termes, les clés candidates sont des super clés minimales. Par exemple, dans l'illustration ci-dessus
Ces deux clés peuvent être des clés candidates, car les clés restantes ont des attributs redondants. Les moyens dans l'enregistrement de super clé (BookId, BookName) peuvent être identifiés de manière unique par juste bookid et donc Bookname est un attribut redondant
Clé primaire: il s'agit d'une clé candidate choisie par le concepteur de base de données pour identifier les entités dans un ensemble d'entités. OU Une clé utilisée pour identifier de manière unique chaque enregistrement est appelée clé primaire.
À partir des clés candidates ci-dessus, n'importe laquelle peut être la clé primaire. Et l'autre qui n'est pas choisi comme clé primaire sera connu comme clé alternative
la source
alternative key
estsecondary key
le même. Très bonne réponse!De ma réponse stackoverflow.com :
À partir de cette réponse de stackoverflow.com concernant un tableau donné:
(Comme je l'ai commenté là-bas, "Les quatre phrases en gras pour FD, cales, super-clés et CK auraient suffi.")
(Une table avec un CK vide est contrainte de contenir au plus une ligne. Un ensemble de colonnes déterminé par l'ensemble vide est contraint d'avoir la même valeur de sous-ligne dans chaque ligne.)
la source
Clé Une clé est un champ unique ou une combinaison de plusieurs champs. Son objectif est d'accéder ou de récupérer des lignes de données de la table en fonction des besoins. Les clés sont définies dans des tableaux pour accéder ou séquencer les données stockées rapidement et en douceur. Ils sont également utilisés pour créer des liens entre différentes tables.
Types de clés Les tableaux ou relations suivants seront utilisés pour définir différents types de clés.
Clé primaire L'attribut ou la combinaison d'attributs qui identifie de façon unique une ligne ou un enregistrement dans une relation est appelé clé primaire.
Clé secondaire Un champ ou une combinaison de champs qui sert de base à la récupération est appelé clé secondaire. La clé secondaire est un champ non unique. Une valeur de clé secondaire peut faire référence à de nombreux enregistrements.
Clé candidate ou clé alternative Une relation ne peut avoir qu'une seule clé primaire. Il peut contenir de nombreux champs ou une combinaison de champs pouvant être utilisés comme clé primaire. Un champ ou une combinaison de champs est utilisé comme clé primaire. Les champs ou la combinaison de champs qui ne sont pas utilisés comme clé primaire sont appelés clé candidate ou clé alternative.
Clé composite ou clé de concaténation Une clé primaire composée de deux attributs ou plus est appelée clé composite.
Clé de tri ou de contrôle Champ ou combinaison de champs utilisé pour séquencer physiquement les données stockées appelées clé de tri. Il est également connu sous le nom de clé de contrôle.
Une super - clé est une combinaison d'attributs qui peuvent être utilisés de manière unique pour identifier un enregistrement de base de données. Une table peut avoir plusieurs super-clés. Les clés candidates sont un sous-ensemble spécial de super-clés qui ne contiennent aucune information étrangère.
Exemple de super clé: imaginez une table avec les champs Nom, Âge, SSN et <Poste téléphonique>. Ce tableau contient de nombreuses super-clés possibles. Trois d'entre eux sont SSN, poste téléphonique et nom. Parmi ceux répertoriés, seul SSN est une clé candidate, car les autres contiennent des informations qui ne sont pas nécessaires pour identifier de manière unique les enregistrements.
Clé étrangère Une clé étrangère est un attribut ou une combinaison d'attributs dans une relation dont la valeur correspond à une clé primaire dans une autre relation. La table dans laquelle la clé étrangère est créée est appelée table dépendante. La table à laquelle la clé étrangère fait référence est appelée table parent.
pour clé minimale de Super référer ce lien , il est plus clair , il http://www.answers.com/topic/superkey-1
la source