Maison > base de données > tutoriel mysql > Explication détaillée du paradigme dans Mysql

Explication détaillée du paradigme dans Mysql

藏色散人
Libérer: 2020-03-21 08:53:51
avant
3552 Les gens l'ont consulté

Définition normale

Format normal : Le format normal est une sorte de connaissance en mathématiques discrètes. Il s'agit de résoudre le problème du stockage et de l'optimisation des données : après avoir sauvegardé les données, il peut. généralement, les données trouvées grâce aux relations ne seront pas stockées de manière répétée. Le but ultime est de réduire la redondance des données.

Contexte du paradigme :

1. Pour résoudre la redondance des données

2. Pour optimiser et stocker les données

3. Après la sauvegarde. les données, les données qui peuvent être obtenues grâce à la relation ne seront plus stockées

Concept de paradigme :

1. C'est une spécification d'une structure hiérarchique, divisé en 6 couches

2 Chaque couche est plus stricte que la couche précédente

3 Pour satisfaire le paradigme de la couche suivante, le principe est que la couche précédente

. 4. Le paradigme a une signification directrice dans la base de données, mais il n'est pas obligatoire de standardiser

5. La base de données doit non seulement prendre en compte les problèmes d'espace, mais aussi les problèmes d'efficacité. Généralement, la troisième couche est utilisée

.

6. Paradigme à six couches, 1NF est le niveau le plus bas avec les exigences les plus faibles ; 6NF est le niveau le plus élevé et le plus strict

Il existe actuellement six paradigmes dans les bases de données relationnelles : première forme normale (1NF. ), deuxième forme normale (2NF) et troisième forme normale (3NF), forme normale Bascord (BCNF), quatrième forme normale (4NF) et cinquième forme normale (5NF, également connue sous le nom de forme normale parfaite). De manière générale, la base de données doit uniquement répondre à la troisième forme normale (3NF).

Première forme normale : assurez-vous que chaque colonne ne peut pas être subdivisée

Exigences

Lors de la conception d'un tableau pour stocker des données, si les champs conçus sont définis. dans le tableau Les données stockées nécessitent un traitement supplémentaire (fractionnement) avant d'être extraites et utilisées, donc la conception du tableau ne répond pas à la première forme normale

2. La première forme normale nécessite que les champs soient atomiques et non divisible

Par exemple :

Tableau de remplacement des conférenciers

Explication détaillée du paradigme dans Mysql

Il n'y a aucun problème avec la conception du tableau ci-dessus : Mais si l'exigence est de connaître les données, il faut afficher un Quand l'enseignant commence-t-il à enseigner et quand finit-il :, alors le temps d'enseignement de remplacement doit être fractionné : il n'est pas conforme à 1NF, les données ne sont pas atomiques , et peut être à nouveau divisé.

Solution

Solution : Divisez le temps de tutorat en deux champs pour résoudre le problème.

Explication détaillée du paradigme dans Mysql

Deuxième forme normale : assurez-vous que chaque colonne du tableau est liée à la clé primaire

Exigences

1 Dans le processus de conception de la table de données, s'il existe une clé primaire composite. key (clé primaire multi-champs), et les champs du tableau ne sont pas déterminés par la clé primaire entière, mais dépendent de En raison d'un champ dans la clé primaire (partie de la clé primaire)

2. Il y a un problème selon lequel le champ dépend de la partie de la clé primaire, appelée dépendance partielle

3. Le deuxième paradigme consiste à résoudre le problème de la conception des tables. Les dépendances partielles sont autorisées

Horaires des cours du professeur

Explication détaillée du paradigme dans Mysql

Clé primaire composite : Maître de conférences+Classe

Dans le tableau ci-dessus : heure de remplacement, début et fin Les champs sont tous liés au courant clé primaire (professeur et classe), mais le sexe ne dépend pas de la classe, la classe ne dépend pas du professeur, le sexe ne dépend que du professeur et la classe ne dépend que de la classe. Il existe une dépendance partielle aux clés primaires de. genre et classe : dépendance partielle. N'est pas conforme à la deuxième forme normale.

Solution

Solution 1 : Le genre et le conférencier peuvent être transformés en tableaux séparés, et les classes et les salles de classe peuvent également être créées. dans des tables séparées.

Solution 2 : Annuler la clé primaire composite et utiliser la clé primaire logique

Clé primaire logique : aucune signification commerciale, telle qu'une clé primaire à incrémentation automatique

Clé primaire commerciale : sens commercial, par exemple, la table des personnes utilise le numéro d'identification comme clé primaire

Explication détaillée du paradigme dans Mysql

Troisième forme normale : assurez-vous que chaque colonne est directement liée à la colonne de clé primaire, plutôt qu'indirectement liée

Exigences

1 , pour satisfaire la troisième forme normale, elle doit satisfaire la deuxième forme normale

2. Théoriquement, tous les champs d'une table devraient dépendre directement de la clé primaire. S'il y a un champ dans la conception de la table, il ne dépend pas directement de la clé primaire, mais s'appuie sur un certain champ non clé pour finalement obtenir une dépendance. la clé primaire. Cette relation de dépendance qui ne dépend pas directement de la clé primaire, mais s'appuie sur des champs de clé non primaires est appelée dépendance transitive

3. Troisième paradigme Il s'agit de résoudre le problème de la dépendance transitive

Le conférencier apporte l'horaire des cours

Explication détaillée du paradigme dans Mysql

Clé primaire : ID

Dans le plan de conception ci-dessus : un conférencier dépendant du sexe existe, le conférencier dépend de la clé primaire ; la classe dépend de la classe, la classe dépend de la clé primaire : le sexe et la classe ont des dépendances transitives

Solution

Supprimez les champs avec des dépendances transitives et les champs dépendants eux-mêmes séparément pour former un A. table séparée, puis lorsque les informations correspondantes sont nécessaires, utilisez la clé primaire de la table d'entité correspondante pour l'ajouter

Horaire des cours du conférencier

Explication détaillée du paradigme dans Mysql

Horaire des cours du conférencier. tableau

Explication détaillée du paradigme dans Mysql

Table de classe

Explication détaillée du paradigme dans Mysql

Anti-paradigme

Parfois, lors de la conception d'une table Parfois, s'il y a plusieurs champs dans une table qui doivent obtenir des informations d'une autre table, en théorie, les données souhaitées peuvent effectivement être obtenues, mais l'efficacité est moindre et d'autres tables ne seront délibérément pas enregistrées dans certaines tables. en enregistrant directement les informations de données souhaitées, une table peut fournir directement des données lors de l'interrogation de données sans avoir besoin de requêtes multi-tables ((faible efficacité), mais la redondance augmentera

Tutoriel vidéo MySQL recommandé, adresse : https://www.php.cn/course/list/51.html

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:cnblogs.com
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