Types d'entités dans la base de données. Introduction à la conception de bases de données

Attribut.

Domaine.

Base de données. Définition.

SGBD. Définition.

Base de données. Définition.

Troisième forme normale. Définition. Exemple.

La variable de relation R est en troisième forme normale si et seulement si les conditions suivantes sont remplies :

· R est en seconde forme normale.

Aucun attribut R non clé n'est dans une dépendance fonctionnelle transitive (c'est-à-dire que la dépendance n'est pas exprimée par un autre attribut) vis-à-vis de la clé potentielle R.

Un attribut non clé d'une relation R est un attribut qui n'appartient à aucune des clés R candidates.

Base de données est un ou plusieurs fichiers de données destinés à stocker, modifier et traiter de grands volumes d'informations interdépendantes, systématisés de telle manière que ces matériaux peuvent être trouvés et traités à l'aide d'un ordinateur électronique (ordinateur)

Système de gestion de base de données (SGBD) est un logiciel qui permet aux utilisateurs de définir, de créer et de maintenir une base de données, ainsi que de traiter les appels de base de données à partir des applications des utilisateurs finaux.

Base de données- un système d'information automatisé pour le stockage centralisé et l'utilisation collective des données. La banque de données comprend une ou plusieurs bases de données, une base de données de référence, un SGBD, ainsi qu'une bibliothèque de requêtes et d'applications.

Domaine- c'est une partie du monde réel à étudier afin de créer une base de données permettant d'automatiser le processus de contrôle.

Attribut Est la plus petite unité d'une structure de données. Chaque élément se voit attribuer un nom unique lors de la création de la base de données. Par ce nom, il est désigné lors du traitement.

L'essence- tout objet spécifique ou abstrait dans le domaine considéré. Les entités sont des types d'informations de base qui sont stockées dans une base de données (une table est affectée à chaque entité dans une base de données relationnelle).

Lister les fonctions du SGBD

Les principales fonctions du SGBD :

1) Détermination de la structure de la base de données créée, son initialisation et son chargement initial.

2) Offrir aux utilisateurs la possibilité de manipuler des données (récupérer les données nécessaires, effectuer des calculs, développer une interface d'entrée/sortie, visualisation).

3) Assurer l'indépendance logique et physique des données.

4) Protection de l'intégrité logique de la base de données - la fiabilité des données peut être violée lorsqu'elles sont saisies dans la base de données ou par des actions illégales de procédures de traitement de données qui reçoivent et saisissent des données incorrectes dans la base de données. Pour augmenter la fiabilité des données, des contraintes dites d'intégrité sont déclarées dans le système.



5) Protection de l'intégrité physique - moyens de restauration de la base de données (transaction).

6) Gestion des droits des utilisateurs pour accéder à la base de données.

7) Synchronisation du travail de plusieurs utilisateurs.

8) Gestion des ressources de l'environnement de stockage - le SGBD alloue des ressources mémoire pour les nouvelles données, réalloue la mémoire libérée, organise la mise en file d'attente des requêtes vers la mémoire externe, etc.

9) Soutien aux activités du personnel du système

La base du modèle de base de données dans tout diagramme est constituée d'entités et de relations, qui sont ensuite transformées en tables et relations de base de données. Les entités sont créées lorsque le diagramme de modèle de base de données est généré. La représentation visuelle du modèle fait partie intégrante de la conception de la base de données, car elle permet au développeur d'analyser plus facilement les inexactitudes qui surviennent dans le modèle et de présenter le modèle sous une forme pratique pour le client et les autres développeurs.

Pour former les éléments du diagramme, la palette d'éléments ("Palette", Fig. 3.49) est utilisée, où se trouve la zone "Données" avec les objets et les liens "Entité". La sélection d'un élément dans la palette "Entité" donnera à l'utilisateur la possibilité de créer un objet "Entité" dans le diagramme, à la suite de quoi le nom de l'entité doit être saisi.


La création d'entités peut également être implémentée via le menu contextuel du dossier "Package ...", où l'élément de menu "Ajouter un objet de données / une entité" créera une entité dans l'arborescence du projet et fournira au développeur la possibilité, comme dans le schéma, saisissez le nom de l'entité (Fig. 3.50).


Il est également possible de créer des entités directement sur le schéma à l'aide du menu graphique contextuel. Pour ce faire, déplacez le curseur de la souris sur une zone vide du schéma et ne la déplacez pas pendant un moment, ce qui entraînera l'apparition d'une zone avec des icônes indiquant la possibilité de créer des éléments valides. Pour le modèle logique de la base de données, une seule icône sera affichée, indiquant la possibilité de créer une entité. Sa sélection, comme dans les cas précédents, créera une nouvelle entité avec une proposition pour saisir son nom.

Dans l'onglet des propriétés de l'entité "Volumetries", le développeur peut préciser les paramètres de modification du nombre d'instances de l'entité en question (Fig. 3.51), notamment :

  • Nombre initial de lignes - indique la quantité de données (instances) à ajouter immédiatement après la création de la table ;
  • Croissance des lignes par mois - Indique combien de copies doivent être ajoutées par mois ;
  • Nombre maximum de lignes — Indique le nombre maximum d'instances pouvant être stockées dans la table décrite par l'entité en question.


Riz. "3.51. Réglage des paramètres de modification
indicateurs quantitatifs de l'entité

Dans la section des propriétés de l'entité, parmi les paramètres de l'onglet "Général", il est demandé au développeur de définir un paramètre supplémentaire "Persistant", qui détermine la possibilité de transformer une entité en table lors du passage d'un modèle de base de données logique à un modèle de base de données physique . Mais toutes les informations sur la structure de la future base de données sont intégrées dans les relations entre entités et attributs, qui se caractérisent par un nombre de paramètres nettement plus important. A l'aide de l'onglet "Attributs", vous pouvez créer des attributs pour une entité et définir leurs paramètres de base.

De même, comme pour créer une entité, les attributs peuvent être créés de différentes manières (Fig. 3.52) :

  • - à l'aide du menu contextuel - le menu contextuel de l'entité dans l'arborescence du projet est utilisé, où il est possible de sélectionner un objet à créer - un attribut, une clé alternative, une restriction, etc. ;
  • - en utilisant les propriétés de l'entité - la zone des propriétés de l'onglet "Attributs" est utilisée, où les attributs sont créés et spécifiés à l'aide des outils qui y sont disponibles ;

en utilisant le menu graphique de l'iris - un menu graphique avec des icônes est utilisé lorsque la souris survole l'entité, à l'aide de laquelle la clé primaire et les attributs simples sont créés avec la possibilité de spécifier le nom de l'attribut.


Puc. 3.52. Un exemple de création d'un attribut
via les propriétés de l'entité

Lors de l'utilisation des propriétés de l'entité, le développeur dans l'onglet "Attributs", à l'aide de l'icône avec le signe "+", crée de nouveaux attributs, après quoi il doit déterminer les principaux paramètres de l'attribut créé :

  • Nom - le nom de l'attribut par lequel la signification significative des données décrites est déterminée ;
  • Clé primaire - un signe qui indique qu'un attribut est un élément d'une clé primaire et que des contraintes d'intégrité appropriées doivent être créées pour lui ;
  • Clé de substitution (clé de substitution) - un signe indiquant qu'un attribut n'est pas un élément du domaine, mais est nécessaire pour un travail efficace avec la base de données et contiendra des valeurs générées automatiquement conformément aux règles de progression arithmétique ;
  • Type (type) - un type de données qui décrit les valeurs représentées par l'attribut ;
  • Longueur / Précision (taille / précision) - une valeur numérique indiquant le nombre de caractères (octets) requis pour stocker la valeur maximale pour l'attribut décrit ;
  • Échelle - Une valeur numérique utilisée pour les attributs numériques qui décrit le nombre de chiffres après la virgule lors de l'utilisation de nombres réels ;
  • Obligatoire - un signe d'impossibilité de stockage par l'attribut d'une valeur NULL vide ;
  • Dérivé (calculé) - un signe de la nécessité de calculer une valeur pour une expression spécifique en utilisant des opérations mathématiques, linguistiques et diverses fonctions du langage SGBD ;
  • Valeur par défaut - la valeur qui doit être écrite si aucune donnée n'a été spécifiée pour l'attribut lors de l'ajout ou de la modification de données ;
  • Expression de dérivation - Une expression de formule qui doit être évaluée lorsque des données sont ajoutées ou modifiées.

Il est important de noter que l'outil offre la possibilité de trier les attributs de l'entité dans l'ordre souhaité par le développeur. Cela se fait à l'aide d'icônes de contrôle sous la forme de flèches multidirectionnelles. Cependant, étant donné que les règles de Codd définissent l'indépendance d'ordre des attributs, l'ordre n'est pas une partie nécessaire du modèle de base de données. Il y a deux raisons pour ordonner les attributs selon vos besoins :

Commodité du travail - lors de la construction de l'ordre des attributs selon certaines règles (par exemple, les attributs indiquant la clé primaire doivent être placés en premier, puis les clés étrangères doivent être placées, puis la clé alternative et les attributs simples), il est plus facile de lire le schéma de modèle et identifier certaines situations problématiques pouvant survenir dans la pratique travailler avec une base de données ; utilisation de technologies de traitement spéciales - lors de l'ajout de données dans le langage SQL, il est possible de ne pas spécifier la liste

zéros de la table, dans laquelle seront entrées les données spécifiées dans la commande, ce qui oblige le développeur du code du programme à connaître l'ordre exact des champs de la table, qui au niveau du modèle logique peut être déterminé par tri les attributs.

En plus de définir des caractéristiques pour chaque attribut, y compris la définition d'une valeur par défaut et d'une expression de formule pour le calcul, toute entité peut avoir des contraintes d'intégrité qui garantissent le stockage correct de la valeur pour l'attribut correspondant. Par exemple, pour un attribut stockant des valeurs d'année, il peut être nécessaire de limiter la valeur minimale. Étant donné qu'au niveau de la construction d'un modèle logique, le développeur peut ne pas savoir quel SGBD sera utilisé pour la mise en œuvre, l'utilisation de fonctions dans l'un des langages de programmation ne sera pas correcte. Cependant, l'outil IBM InfoSphere Data Architect permet au développeur de spécifier la condition de contrainte dans plusieurs langues (Figure 3.53) :

  • OCL (Object Constraint Language) est un langage de contrainte pour les objets utilisé dans la représentation orientée objet de données et de programmes d'application, qui est rarement utilisé dans la mise en œuvre de bases de données relationnelles, utilise des expressions logiques standard et des références aux attributs d'entité (par exemple : Entity. Année> = 2000 ):
  • SQL (Structured Query Language) est un langage de requête structuré utilisé dans le traitement des bases de données relationnelles, généralement axé sur un SGBD spécifique et possède de nombreuses fonctions inhérentes uniquement au SGBD sélectionné, utilise des opérations logiques (ET, OU, etc.) et les applique au niveau de l'attribut de l'entité en question (par exemple : Année> = 2000 et Année
  • L'anglais est un langage naturel, non traduisible dans un langage de programmation, généralement utilisé pour décrire une contrainte puis la représenter dans le processus de programmation avec une expression logique appropriée (par exemple : l'année est représentée par une valeur dans une plage)