Mon manuel donne la définition suivante d'une clé primaire dans une base de données relationnelle, que je ne comprends pas entièrement. De l'aide serait grandement appréciée.
Laisser être une relation. Ensuite, la clé primaire pour est un sous-ensemble de l'ensemble des attributs de , dire , satisfaisant les deux propriétés suivantes:
Propriété d'unicité: pas deux tuples distincts de ont la même valeur pour .
Propriété d'irréductibilité: aucun sous-ensemble approprié de a la propriété d'unicité.
Je me perds par la propriété Irreducibility.
database-theory
FutureSci
la source
la source
Réponses:
Considérez le tableau suivant:
Une clé est tout ensemble d'attributs: tout sous-ensemble de {FirstName, LastName, Pet, FavColour}. La propriété d'unicité indique qu'aucun enregistrement ne peut avoir les mêmes valeurs pour les attributs d'une clé. Ainsi, par exemple, {FavColour} est une clé qui a la propriété d'unicité: deux enregistrements n'ont pas la même valeur pour elle. {Prénom, Nom} est également unique: il n'y a pas deux enregistrements ayant le même prénom et le même nom. {Pet}, d'autre part, n'est pas unique, car les premier et deuxième enregistrements ont la même valeur pour cet attribut.
Désormais, {FirstName, LastName, Pet, FavColour} est également une clé unique: aucun enregistrement n'a la même valeur pour tous les attributs. Mais c'est une sorte de clé idiote, non? L'irréductibilité indique que si vous supprimez l'un des attributs de votre clé, il cesse d'être unique. Donc {Firstname, LastName, Pet, FavColour} n'est pas irréductible car, si vous supprimez FavColour, vous obtenez la clé {FirstName, LastName, Pet}, qui a toujours un caractère unique. Et ce n'est pas irréductible car vous pouvez jeter Pet et obtenir {FirstName, LastName}, qui est toujours unique. Cependant, {FirstName, LastName} est irréductible car ni {FirstName} ni {LastName} n'est unique: il y a deux personnes avec le même prénom et deux personnes avec le même nom.
la source
Notez commentK peut être un ensemble de colonnes. L'irréductibilité signifie que vous devez choisir un nombre minimal d' ensembles de colonnes.
Nota bene: Ils devraient exigerK≠ ∅ .
Par exemple, considérez cette relation.
Examinons toutes les clés possibles.
A
- unique et irréductible.B
-- Pas unique.C
-- Pas unique.A,B
- réductible àA
.A,C
- réductible àA
.B,C
- unique et irréductible.A,B,C
- réductible àA
.Par conséquent, il y a deux choix pour les clés primaires ici:
A
etB,C
.la source
L'irréductibilité se réfère simplement à un ensemble minimum d'attributs que nous ne pouvons pas descendre ci-dessous sans perdre l'unicité. Par exemple, dans un tableau de personnes, nous pouvons trouver que (Nom, Prénom) sont uniques alors que (Nom) et (Prénom) ne le sont pas.
Une fois que nous avons unicité, nous pouvons continuer à ajouter des attributs sans le perdre, donc l'irréductibilité résout ce problème.
la source