Maison > base de données > tutoriel mysql > Quels types de clés existe-t-il dans la base de données ?

Quels types de clés existe-t-il dans la base de données ?

青灯夜游
Libérer: 2019-01-25 13:20:40
original
8038 Les gens l'ont consulté

Les clés jouent un rôle important dans les bases de données relationnelles et constituent une partie importante du modèle de base de données relationnelle. L'article suivant vous présentera quelques clés courantes dans les bases de données. J'espère qu'il vous sera utile.

Quels types de clés existe-t-il dans la base de données ?

Pourquoi devons-nous utiliser des clés ?

Dans les applications pratiques, le nombre de tables nécessaires pour stocker les données est important et différentes tables sont également liées les unes aux autres. [Recommandations vidéo associées : Tutoriel MySQL]

De plus, une grande quantité de données est stockée dans la table. Les tables s'adaptent souvent à des milliers d'enregistrements qui y sont stockés, non classés et non organisés.

Maintenant, pour obtenir un enregistrement spécifique à partir d'un tel ensemble de données, vous devrez appliquer certaines conditions, mais s'il y a des données en double et chaque fois que vous essayez d'obtenir des données en appliquant certaines conditions, vous obtiendrez des données d'erreur. Combien d’essais y a-t-il avant d’obtenir des données correctes ?

Pour éviter tout cela, définissez des clés pour identifier facilement n'importe quelle ligne de données dans le tableau.

Dans une base de données, les clés sont utilisées pour établir et identifier les relations entre les tables, et sont également utilisées pour identifier de manière unique tout enregistrement ou ligne de données dans une table. Il peut s'agir d'un attribut unique ou d'un ensemble d'attributs, la combinaison pouvant servir de clé.

Types de clés

Voici quelques types de clés courants Afin de vous permettre de comprendre ces clés, présentons-les à travers des exemples. :

id_étudiant nom âge college_id téléphone
1
student_id name age college_id phone
1
小华 20 01 1561258xxx
2 小红 21 01 1771258xxx
3 小明 20 02 1831258xxx
Xiaohua 20 01 1561258xxx
2 petit Rouge 21 01 1771258xxx
3 Xiao Ming 20 02 1831258xxx

On peut voir qu'il s'agit d'une simple table Student avec les champs student_id, name, subject_id, age et phone.

Clé candidate

Une clé candidate est définie comme le plus petit ensemble de champs pouvant identifier de manière unique chaque enregistrement de la table. Il s'agit d'un attribut ou d'un ensemble d'attributs qui sert de clé primaire d'une table pour identifier de manière unique chaque enregistrement de cette table.

Dans la table Student ci-dessus, student_id et phone sont tous deux des clés candidates pour la table student. Voici quelques caractéristiques des clés candidates :

● Une clé candidate ne peut jamais être NULLe ou vide, sa valeur doit être unique ;

● Tous les attributs de la table, à l'exception de la clé primaire, peuvent être considérés comme des clés candidates. Une table peut avoir plusieurs clés candidates.

● La clé du candidat peut être une combinaison de plusieurs colonnes (attributs).

Super clé

La super clé est définie comme un ensemble d'attributs dans une table qui identifie de manière unique chaque enregistrement de la table. Les super clés sont un sur-ensemble de clés candidates.

Dans le tableau défini ci-dessus, la super clé peut être :

● student_id : étant donné que chaque ligne de données student_id est unique, elle peut être utilisée pour identifier de manière unique chaque ligne.

● (student_id, name) : Désormais, les noms de deux étudiants peuvent être identiques, mais leurs cartes d'étudiant ne peuvent pas être identiques, cette combinaison peut donc également être une clé.

● Téléphone : Le numéro de téléphone de chaque élève étant unique, le téléphone peut également être une clé.

Ils peuvent donc tous être des super clés.

Clé primaire

La clé primaire est la clé candidate la plus appropriée pour devenir la clé d'identification de n'importe quelle table. Elle peut identifier de manière unique chaque enregistrement de la table.

Pour la table Student, nous pouvons utiliser la colonne student_id comme clé primaire.

Quels types de clés existe-t-il dans la base de données ?

Clé composite

Une clé composite est constituée de deux attributs ou plus qui identifient de manière unique tout enregistrement dans une table composée de clés. Lorsqu'aucun attribut de la table n'identifie de manière unique une ligne, nous devons utiliser une clé composite.

Remarque : les propriétés qui forment ensemble une clé composite ne sont pas des clés indépendantes ou séparées.

student_id subject_id exam_name mark
1 02 PHP课程 90
2 02 MySQL课程 80

En haut se trouve un tableau de scores, qui est utilisé pour stocker les scores obtenus par les étudiants dans des matières spécifiques.

Quels types de clés existe-t-il dans la base de données ?

Dans ce tableau student_id, subject_id formera la clé primaire, c'est donc une clé composite.

Clé alternative

Parmi toutes les clés candidates, une seule sera sélectionnée comme clé primaire, et les clés restantes sont appelées clés alternatives ou clés auxiliaires.

Clé étrangère

La clé étrangère est une valeur d'attribut dans une table qui sert de clé primaire d'une autre table. Par conséquent, les clés étrangères peuvent être utilisées pour relier deux tables entre elles.

Quels types de clés existe-t-il dans la base de données ?

Remarque : vous devez être très prudent lors de la saisie de données dans les colonnes de clé étrangère, car la saisie de données incorrectes peut invalider la relation entre les deux tables.

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal