En savoir plus sur les schémas relationnels et comprendre comment discerner les paradigmes

1. Qu'est-ce qu'un schéma relationnel ?

Mode relationnel : le mode relationnel est équivalent au cadre d'un tableau à deux dimensions. Remplir des données dans ce cadre est appelé une instance de mode relationnel, ou relation (R).

R(A1, A2, A3...Ai) : R est le nom de la relation et Ai est le nom de l'attribut de la relation. Un nom de relation correspond à une table, le nom de la relation correspond au nom de la table et l'attribut correspond au nom de la colonne dans la table .

Notation simplifiée pour les modèles relationnels : R<U,F>

2. Le rôle de la normalisation des schémas relationnels

Pourquoi concevoir une base de données normalisée ?

Les bases de données non normalisées présentent généralement les inconvénients suivants :

Une grande redondance de données, une mauvaise cohérence des données, une modification complexe des données, la mise à jour, l'insertion et la suppression de tables signaleront des exceptions. Le rôle de la normalisation est de supprimer autant que possible la redondance, de maintenir la cohérence des données, de simplifier la modification des données et de supprimer les exceptions générées lors de l'insertion et de la suppression de tables. Les tables normalisées sont généralement plus petites.

La conception de base de données relationnelle est principalement la conception de schéma relationnel. La qualité de la conception du schéma relationnel affecte directement le succès ou l'échec de la conception de la base de données relationnelle, et la normalisation du schéma relationnel est principalement réalisée par des paradigmes .

Forme normale (Forme normale, NF)

La forme dite normale (Normal Form, NF) fait référence au schéma relationnel standardisé. Différents paradigmes sont produits par différents degrés de normalisation. Selon les différentes conditions de satisfaction, un certain mode de relation R est souvent appelé "le premier mode".

Première forme normale (1NF)

Dans toute base de données relationnelle, la première forme normale (1NF) est l'exigence de base pour le schéma relationnel , et une base de données qui ne répond pas à la première forme normale (1NF) n'est pas une base de données relationnelle.

Première forme normale (1NF) : les champs de la table de base de données sont tous des attributs uniques et ne peuvent pas être divisés davantage.

Par exemple, les tables de base de données suivantes sont conformes à la première forme normale :

Champ 1 Champ 2 Champ 3 Champ 4

Et une telle table de base de données n'est pas conforme à la première forme normale :

Champ 1 Champ 2 Champ 3 (Champ 3.1, Champ 3.2) Champ 4

Par exemple, le numéro d'employé, le nom et le numéro de téléphone forment une table (une personne peut avoir un numéro de téléphone au bureau et un numéro de téléphone à la maison) et la spécification devient 1NF.

Résumé : Il ne peut pas y avoir de colonnes en double et les colonnes ne peuvent pas être subdivisées.

Une relation qui ne remplit pas les conditions de la première forme normale est une relation de forme non normale. Dans une base de données relationnelle, toute relation de forme non normale doit être transformée en une relation de forme normale.

Deuxième forme normale (2NF)

La deuxième forme normale est établie sur la base de la première forme normale, c'est-à-dire que pour satisfaire la deuxième forme normale, la première forme normale (1NF) doit être satisfaite en premier.

Définition : Si le schéma de relation R appartient à 1NF, et que chaque attribut non primaire dépend complètement de la clé primaire, alors la relation R est dite appartenir à la deuxième forme normale, qui est enregistrée comme R appartient à 2NF.

Qu'est-ce que la dépendance totale ? ?

La dépendance dite complète signifie qu'il ne peut y avoir un attribut qui ne dépende que d'une partie du mot-clé principal. S'il existe, alors cet attribut et cette partie du mot-clé principal doivent être séparés pour former une nouvelle entité. La nouvelle entité et l'entité d'origine forment une paire de nombreuses relations.

par exemple

Supposons que la table de relations des cours au choix est SelectCourse (numéro d'étudiant, nom, âge, nom du cours, notes, crédits) et que le mot-clé est un mot-clé combiné (numéro d'étudiant, nom du cours), car il existe la relation déterminante suivante :

(numéro d'étudiant, nom du cours) -> (nom, âge, notes, crédits)

Cette table de base de données ne satisfait pas la deuxième forme normale, car il existe les relations déterminantes suivantes :

(nom du cours) -> (crédits)

(numéro d'étudiant) -> (nom, âge)

c'est-à-dire que les crédits et les noms existent, l'âge dépend en partie de la clé primaire. Pour faire simple, un mot-clé peut directement déterminer un code, par exemple si vous savez que votre classe est la Classe 1, vous saurez que votre classe est située au premier étage du bâtiment d'enseignement.

Comme il n'est pas conforme à 2NF, ce tableau de relations de sélection de cours aura les problèmes suivants :

(1) Redondance des données :

Si N étudiants suivent le même cours, les « crédits » seront répétés N-1 fois ; si le même étudiant suit M cours, le nom et l'âge seront répétés M-1 fois.

(2) Exception de mise à jour :

Si les crédits du cours sont mis à jour, toutes les valeurs de crédits du tableau doivent être mises à jour, sinon différents crédits apparaîtront dans le même cours.

(3) Insérer une exception :

Supposons qu'un nouveau cours doit être ouvert, mais qu'aucun étudiant n'a encore suivi ce cours et que les données ne peuvent pas être saisies dans la base de données car il n'y a pas de numéro d'étudiant.

(4) Supprimez l'exception :

En supposant qu'un groupe d'étudiants ait terminé des cours au choix, ces dossiers au choix doivent être supprimés de la base de données, mais en même temps, le nom du cours et les informations sur les crédits sont également supprimés. Évidemment, cela entraînera également une exception d'insertion.

Nous avons donc modifié la conception et remplacé la table de relations de sélection de cours SelectCourse par les trois tables suivantes :

Étudiant : Étudiant (numéro d'étudiant, nom, âge)

Cours : Cours (nom du cours, crédits)

Relation de sélection de cours : SelectCourse (numéro d'étudiant, nom du cours, note)

Une telle table de base de données est conforme à la deuxième forme normale, qui élimine la redondance des données, met à jour, insère et supprime les exceptions.

Remarque : Toutes les tables de base de données à mot clé unique sont conformes à la deuxième forme normale, car il est impossible d'avoir des mots clés composites et il est impossible que des attributs non principaux dépendent partiellement des mots clés principaux.

troisième paradigme

Définition : Si le schéma relationnel R appartient à 2NF, et que les attributs non primaires de R ne dépendent pas transitivement de la clé primaire de R, alors la relation R est dite appartenir à la troisième forme normale. (Résumé personnel, les attributs non principaux doivent dépendre directement du code principal et ne peuvent pas passer par d'autres attributs non principaux pour dépendre du code principal)

La dépendance dite transitive signifie que A dépend de B, B dépend de C et A dépend transitivement de C.

Par conséquent, les tables de base de données satisfaisant à la troisième forme normale ne doivent pas avoir les dépendances suivantes :

champ clé -> champ non clé x -> champ non clé y

par exemple

Supposons que la table des relations entre étudiants est Étudiant (numéro d'étudiant, nom, âge, université, emplacement de l'université, téléphone de l'université) et que le mot-clé est un numéro d'étudiant unique, il doit donc être conforme à la deuxième forme normale, mais comme il n'y a pas mots-clés emplacement du collège et téléphone du collège Cela dépend du collège, c'est-à-dire que le transfert dépend du numéro d'étudiant, donc ce tableau de relations n'est pas conforme à la troisième forme normale. Cela entraînera également des problèmes tels que la redondance des données et des opérations DDL anormales.

On peut donc le modifier :

Étudiant : (numéro d'étudiant, nom, âge, collège)

Faculté : (faculté, lieu, téléphone)

Une telle table de base de données est conforme à la troisième forme normale.

Résumer:

a. Le but de la normalisation est de rendre la structure plus raisonnable, d'éliminer les exceptions de stockage, de réduire la redondance des données et de faciliter l'insertion, la suppression et la mise à jour.

b. Principe : suivre le principe "une chose, un lieu" dans le concept de simplification, c'est-à-dire qu'un modèle de relation décrit une entité ou une connexion établie par une entité.

c. Méthode : décomposer la projection du schéma relationnel en deux ou plusieurs schémas relationnels.

d. L'ensemble de schémas de relation décomposé doit maintenir une relation d'équivalence avec le schéma de relation d'origine, c'est-à-dire que la relation d'origine peut être restaurée par une connexion naturelle sans perdre d'informations, et la connexion raisonnable entre les attributs doit être maintenue.

Voici un exemple pour vous aider à comprendre
qu'il existe un modèle relationnel P (C, S, T, R). Selon la sémantique, il existe l'ensemble de dépendances fonctionnelles suivant : F={C->T, ST->R , TR->C}. Le schéma de relation P est normalisé jusqu'à (?)

Analyse :
Si le schéma relationnel R appartient à 2NF, et que chaque attribut non clé ne dépend pas transitivement du code, alors R appartient à 3NF.

3NF n'est pas autorisé à avoir une telle dépendance fonctionnelle non triviale X->Y entre les attributs du schéma relationnel, où X n'inclut pas de codes, et Y est un attribut non primaire.

On peut voir à partir de la dépendance fonctionnelle définie dans le texte que (C, S) et (S, T) sont des clés candidates du schéma relationnel, donc C, S, T sont des attributs primaires et R est un attribut non primaire .

De toute évidence, les champs de la table de base de données sont tous d'un seul attribut et ne peuvent pas être divisés davantage. Donc le schéma de relation est conforme à 1NF,

Dans le même temps, ST-> R, le mode de relation P appartient à 1NF, et chaque attribut non principal dépend entièrement de la clé principale, de sorte que le mode de relation atteint 2NF,

Dans le même temps, l'attribut non clé R ne dépend pas transitivement du code, donc le schéma relationnel atteint 3NF

Par conséquent, la réponse à cette question est 3NF,

Espérons que cela peut vous aider!

Je suppose que tu aimes

Origine blog.csdn.net/qq_45157635/article/details/119867067
conseillé
Classement