Quels objets incluent l'importance de la communication. Modèle de modélisation de données "Essence-communication". Les questions considérées: Les éléments du modèle "Essence-communication" "Essence-Communication" des entités faibles des sous-types. Attribut, valeur et de nombreuses valeurs

Avant de commencer à créer un système de traitement de l'information automatisé, le développeur doit former les concepts d'objets, de faits et d'événements qui exploitera ce système. Afin d'amener ces concepts à un modèle de données donné, il est nécessaire de les remplacer par des vues d'information. L'un des outils les plus pratiques de la présentation unifiée de données indépendamment de son logiciel d'implémentation est le modèle "modèle d'entité-relation", modèle ER - modèle).

Le modèle "Essence-communication" repose sur certaines informations sémantiques importantes sur le monde réel et est destinée à une représentation logique des données. Il définit les valeurs des données dans le contexte de leur relation avec d'autres données. Important pour nous est le fait que tous les modèles de données existants (hiérarchique, réseau, objet, objet) peuvent être générés à partir du modèle "Essence-communication" (hiérarchique, réseau, relationnel, objet), de sorte qu'il est le plus courant.

Le modèle "Essence-communication" a été proposé en 1976 par Peter Pin-Sheng Chen, traduction de son article de son article "Modèle" Essence-communication "- une étape vers une seule présentation de données" publiée dans la revue "DBMS" N 3 pour 1995

Représentation des données multi-niveaux

Lors de l'étude du modèle de données, il est nécessaire d'identifier les niveaux d'une représentation logique des données auquel ce modèle concerne. Élargir l'ensemble des positions, nous pouvons identifier quatre niveaux de présentation de données:

Informations relatives aux essences et aux connexions existant dans notre imagination; - La structure de l'information est l'organisation d'informations dans lesquelles des entités et des communications sont soumises par les données. - Structure de données indépendante des voies d'accès - structures de données qui ne sont pas liées aux systèmes de recherche, à l'indexation, etc. - Structure de données en fonction des chemins d'accès.

Figure 1. Analyse des modèles de données utilisant plusieurs niveaux de représentations logiques

Informations sur les entités et les connexions

À ce niveau, nous considérons l'essence et les communications. L'entité (entité) est un objet qui peut être identifié par une méthode qui la distingue des autres éléments. Des exemples de l'essence sont une personne spécifique, une entreprise ou un événement. La communication (relation) est une association installée entre des entités. Par exemple, un père-fils est un lien entre les deux entités d'une personne.1)

La base de données Enterprise contient des informations sur les entités et les connexions intéressant cette entreprise. Une description complète de l'entité ou de la communication ne peut pas être entrée dans la base de données Enterprise. Il est impossible (et apparemment, il n'est pas nécessaire) de conserver toutes les informations potentiellement disponibles sur les entités et les connexions. Ensuite, nous ne considérerons que les entités et les connexions (et les informations sur eux), qui doivent entrer dans le projet de base de données.

Entité et de nombreuses entités

Soit E désigne une certaine essence qui existe dans notre imagination. Chaque entité appartient à un autre ensemble d'entités (ensemble d'entités), telles que les employés, le projet ou le département. Avec chaque ensemble d'entités, le prédicat est associé, ce qui vous permet de vérifier si cette entité appartient à cet ensemble. Par exemple, si nous savons que l'entité appartient à la multitude d'entités employés, nous savons également que cette entité possède des propriétés, communes avec d'autres entités de la multitude d'entités d'employés. Ces propriétés incluent le prédicat mentionné ci-dessus. Soit EI désigne de nombreuses entités. Notez que les ensembles d'entités ne sont pas nécessaires pour ne pas intersecter. Par exemple, l'entité appartenant à l'ensemble d'entités d'hommes-personnes (hommes) appartient également aux nombreuses entités de la personne (personnes). Dans ce cas, personne-personne est un sous-ensemble de personne.

Communication, rôle et de nombreuses connexions.

Considérer les entités d'associations. Relations multiples (Relationship Set) RI est une relation mathématique entre N entités, chacune appartenant à certaines entités multiples:

(| E1 ∈ E1, E2 ∈ E2, ..., EN ∈ EN), et chaque tuple d'entités, est une relation (relation). Notez que dans cette définition, les EI ne sont pas nécessaires pour être des ensembles différents. Par exemple, le mariage (mariage) est un lien entre deux entités de l'ensemble des entités de la personne (personne).

Le rôle (rôle) de l'entité dans la connexion est une fonction que l'essence fonctionne à cet égard. Mari (mari) et femme (épouse) est un rôle. Surgelation des entités Dans la définition de la communication (nous notons que des crochets ont été utilisés) peuvent être manquants, si les rôles des entités sont explicitement indiqués: (R1 / E1, R2 / E2, ..., RN / FR), où RI est le rôle de l'EI essence à cet égard.

Attribut, valeur et de nombreuses valeurs.

Des informations sur l'essence ou la communication sont obtenues en observant ou en mesurant et exprimées par une pluralité de paires d'attributs-valeur. 3, Rouge, Peter et Johnson sont des valeurs. Les valeurs sont classées dans différents ensembles (ensembles de valeurs), tels que les pieds, la couleur, le prénom et le nom de famille. Avec chaque ensemble de valeurs, le prédicat est associé à la vérification de la valeur de la valeur de cet ensemble. Une valeur de certains types de valeurs peut être équivalente à une autre valeur d'un autre ensemble de valeurs. Par exemple, 12 des valeurs de pouce de réglage (pouces) sont équivalentes à 1 dans l'ensemble des valeurs des pieds.

L'attribut (attribut) peut être formellement défini comme une fonction représentant une pluralité d'entités ou une pluralité de connexions dans une pluralité de valeurs ou d'un produit décartian des ensembles de valeurs:

f: EI ou RI → VI ou VI1 × VI2 × ... × ... × vin à la Fig. 2 montre plusieurs attributs définis sur l'ensemble des entités de la personne. L'attribut d'âge (âge) fait un affichage dans l'ensemble des valeurs de non-années. L'attribut peut définir l'affichage des ensembles de valeurs en cartésien. Par exemple, l'attribut NAME (nom complet) définit l'affichage dans une pluralité de valeurs de prénom (nom) et nom de famille (nom). Notez que plusieurs attributs peuvent définir l'affichage du même ensemble d'entités dans le même ensemble de valeurs (ou le même groupe d'ensembles de valeurs). Par exemple, les attributs de noms (nom complet) et alternatif-name (autre nom complet) sont définis pour afficher à partir de plusieurs entités d'employés dans une pluralité de valeurs de prénom et de nom de famille. Ainsi, l'attribut et de nombreuses valeurs sont des concepts différents, bien que dans certains cas, ils puissent avoir le même nom (par exemple, l'employé-Aucun attribut définit l'affichage de l'employé (employés) à l'ensemble des valeurs de l'employé - aucune valeur (nombre -le service)). Cette distinction n'est pas explicitement dans le modèle de réseau et dans de nombreux systèmes de gestion de données existants. Notez également que l'attribut est défini comme une fonction. Par conséquent, il affiche cette entité à une valeur (ou une tuple des valeurs dans le cas du produit décartitien des ensembles de valeurs).

Figure. 2. Attributs définis sur les multiples entités de la personne

Notez que les connexions ont également des attributs. Considérez un ensemble de connexions de projets de projet (exécutif de projet) (Fig. 3). Attribut pourcentage de temps (temps de pourcentage) représentant une action temporelle allouée à un employé spécifique à un projet spécifique est un attribut défini sur un ensemble de connexions de travail-travailleur. Ce n'est ni un attribut d'essence des employés ni l'attribut de l'essence du projet, car sa signification dépend de l'employé et du projet. Le concept d'attribut de communication est important pour la compréhension de la sémantique des données et la définition des dépendances fonctionnelles entre les données.

Figure. 3. Attributs définis sur l'ensemble des cravates du projet

Structure d'information conceptuelle.

Nous allons maintenant discuter de la manière d'organiser des informations sur les entités et les connexions. Cet article propose une méthode de séparation des informations sur les entités et les informations sur les connexions. Nous montrerons que cette séparation est utile pour identifier les dépendances fonctionnelles entre les données.

En figue. 4 sous la forme de la table, des informations sur les entités dans une variété d'entités sont données. Chaque ligne de valeurs fait référence à la même entité et chaque colonne fait référence à un ensemble de valeurs qui fait référence à l'attribut. L'ordre des lignes et des colonnes n'est pas essentiel.

Figure. 4. Informations sur les entités provenant d'une variété d'entités (formulaire tabulaire)

Figure. 5. Informations sur les liens à partir d'une variété de connexions (forme tabulaire)

En figue. 5 fournit des informations sur les liens dans une variété de connexions. Notez que chaque ligne de valeurs concerne la communication, qui est indiquée par un groupe d'entités, chacune ayant un certain rôle et appartient à un certain ensemble d'entités.

Notez que sur la Fig. 4 et 2 (ainsi que sur la figure 5 et 3) ont présenté diverses formes de la même information. La forme de la table est utilisée pour simplifier la liaison au modèle relationnel.

Structure de l'information

Essences, communications et valeurs au niveau 1 (voir fig. 2-5) sont des objets conceptuels existants dans notre imagination (c'est-à-dire que nous étions dans la sphère conceptuelle). Au niveau 2, nous considérons la présentation d'objets conceptuels. Nous supposons qu'il y a des représentations directes de valeurs. Ensuite, nous décrivons comment vous pouvez imaginer des entités et des communications.

Clé primaire.

En figue. 2 Les valeurs d'attribut de l'employé-Aucun attribut ne peuvent être utilisées pour identifier des entités dans plusieurs entités d'employés si chaque employé dispose d'un numéro d'employé unique. Il est possible que plus d'un attribut soit nécessaire pour identifier des entités dans plusieurs entités. Il est également possible que plusieurs groupes d'attributs soient utilisés pour identifier les entités. Essentiellement, la clé d'entité (clé d'entité) est un groupe d'attributs, de sorte que la cartographie de diverses entités dans le groupe correspondant d'ensembles de valeurs est un affichage à valeur mutuellement. S'il n'est pas possible de trouver un tel affichage sur les données disponibles ou si la simplicité est souhaitée dans l'identification des objets, vous pouvez déterminer artificiellement l'attribut et une pluralité de valeurs pour obtenir un affichage mutuellement précieux. En cas de quelques clés, une clé sémantique significative est généralement sélectionnée comme clé primaire de l'entité (clé principale de l'entité - PK).

Figure. 6. Présentation des entités avec des valeurs (chiffres de service)

Figure. 6 La fusion de plusieurs entités d'employés avec plusieurs employés - aucune valeur n'est obtenue avec du riz. 2. Faites attention à certaines conséquences sémantiques de la Fig. 6. Chaque valeur dans l'ensemble des employés - aucune valeur n'est l'essence (portion). Attributs Définissez l'affichage à partir d'une variété d'employés - aucune valeur dans d'autres ensembles de valeurs. Nous notons également que l'attribut employé-no définit l'affichage de plusieurs salles-employé - aucune valeur elle-même.

Essence / communication de la relation.

Les informations sur les entités dans une multitude d'entités peuvent maintenant être organisées sous la forme indiquée à la Fig. 7. Notez que la Fig. 7 ressemble à la Fig. 4, sauf que les entités sont représentées par les valeurs de leurs clés principales. Toute table à la Fig. 7 représente la relation entité (relation d'entité) et chaque ligne représente l'entité tuple (entité tuple).

Dans certains cas, l'entité dans une variété d'entités ne peut être identifiée de manière unique par les valeurs de leurs propres attributs; Par conséquent, pour leur identification, nous devons utiliser le (s) lien (s). Par exemple, nous considérons les entités des employés subordonnés (supporters): les subordonnés sont identifiés par leurs noms et leurs valeurs de la principale clé des employés-chefs (c'est-à-dire avec leurs connexions avec ces employés). Notez que sur la Fig. 9 Employé - Non n'est pas un attribut d'entités dans une personne à charge multiple et est la principale clé des employés qui ont des subordonnés. Chaque ligne de valeurs de la Fig. 9 est un tuple de bijou avec employé-no et nom comme clés primaires. Toute la table est l'attitude des entités.

Théoriquement, tout type de communication peut être utilisé pour identifier des entités. Pour la simplicité, nous nous limiterons à un seul type de communication: connexions binaires avec une cartographie 1: N, dans laquelle l'existence de n entités d'un côté de la communication dépend de l'existence d'une entité de l'autre côté de la communication . Par exemple, un employé peut avoir N (n \u003d 0, 1, 2, ...) subordonnés et l'existence de subordonnés dépend de l'existence de l'employé concerné-patron.

Cette méthode d'identification d'entités avec des liens avec d'autres entités peut être appliquée de manière récursive jusqu'à ce que les entités pouvant être identifiées par les valeurs de leurs propres attributs seront identifiées. Par exemple, la principale clé du département de la société peut consister aux ministères et à la clé principale du département, qui se compose à son tour de la salle de séparation et du nom de la société.

Par conséquent, nous avons deux formes de relations entiititiques. Si les communications sont utilisées pour identifier des entités, nous l'appellerons une relation d'entité faible (Fig. 9). Si les connexions ne sont pas utilisées pour identifier des entités, nous l'appellerons une relation d'entité régulière (Fig. 8). Si certaines entités de connexion sont identifiées par d'autres connexions, nous l'appellerons une relation relationnelle faible (relation relationnelle faibles). Par exemple, toute connexion entre les entités des entités dépendantes et d'autres entités entraînera la formation de relations faibles de la communication, car l'essence de la personne à charge est identifiée par son nom et son obligation avec employé. La différence entre les relations régulières et faibles d'entités et de liens sera utile pour soutenir l'intégrité des données.

L'un des moyens les plus populaires de présentation officialisée du sujet des systèmes de traitement orientés système est le modèle "Essence - Communications", qui repose sur un nombre important de produits de cas commerciaux soutenant le cycle complet des systèmes de base de données ou étapes séparées. Dans le même temps, beaucoup d'entre eux appuient non seulement le stade de la conception conceptuelle du sujet du système développé, mais leur permettent également d'être effectué sur la base du modèle construit par leurs moyens de conception logique par Génération automatique d'un schéma de base de données conceptuel pour le SGBD sélectionné, par exemple, un schéma de base de données pour tout SQL -Server ou MDBM d'objet.

La simulation de la zone dans ce cas est basée sur l'utilisation de diagrammes graphiques, y compris un nombre relativement petit de composants et la chose la plus importante - technologie de constructionces diagrammes.

La base sémantique du modèle ER fait les hypothèses suivantes:

cette partie du monde réel (un ensemble d'objets interdépendants), des informations sur lesquelles devrait être placée dans la base de données peut être présenté, commele total entités;

chaque entité a des propriétés caractéristiques (attributs) qui le distinguent des autres entités et leur permettant pour identifier;

les entités peuvent être classées par les types d'entités: chaque instance de l'entité (représentant un objet) peut être attribuée. àclasser - type d'entitéschaque copie dont dispose des propriétés communes et distinguées des entités d'autres classes;

la systématisation de la présentation basée sur des classes en général suggère la dépendance hiérarchique des types: l'essence du type MAIS est un subtypeessence DANS,si chaque instance du type MAIS est une instance de l'essence du type DANS;

l'interconnexion des objets peut être représentée comme relation,qui servent à la fixation (présentation) de l'interdépendance de deux entités ou plus.

Ici devrait encore une fois souligner la nature de l'information du concept essenceet son rapport avec des objets matériels ou imaginaires de la matière. Tout objet du sujet a des propriétés, dont certaines se démarquent comme caractéristique - significative du point de vue d'une tâche appliquée. Dans le même temps, par exemple, en train d'analyser et de systématiser la zone, généralement allouée des classes -la combinaison d'objets avec le même ensemble de propriétés spécifiées sous la forme ensembles d'attributs(Les valeurs d'attribut pour des objets de classe, naturellement, peuvent varier). En conséquence, au niveau de la présentation du sujet (c'est-à-dire son modèle infologique), l'objet considéré comme le concept (l'objet dans la conscience d'une personne) correspond au concept essence;objet, dans le cadre du monde matériel (et existant indépendamment de la conscience humaine), correspond au concept instance de l'entité;la classe d'objets correspond au concept type d'entité.


À l'avenir, comme il n'y a pas de cas séparé d'objets dans le modèle d'infographie, mais des classes, nous ne distinguerons pas les concepts correspondants de ces deux niveaux, c'est-à-dire que nous assumerons l'identité des concepts un objetet entité, propriété d'objetet entité de propriété.

Modèleen tant que description de la zone, il doit définir des objets et des relations entre eux, c'est-à-dire établir les liens des deux types suivants.

1. Liens entre les objets et les ensembles de propriétés caractéristiques et définissent ainsi les objets eux-mêmes.

2. Communication entre les objets définissant la nature et la nature fonctionnelle de leur interdépendance.

Comme indiqué précédemment, la modélisation ER du sujet est basée sur l'utilisation de graphiques graphiques, en tant que méthode simple (familière), visuelle et à la fois informative et multidimensionnelle d'affichage des composants du projet. Par conséquent, la présentation des dispositions de base du modèle ER sera illustrée par le matériau du diagramme ER, illustré à la Fig. 5.4.

Essence.L'essence par laquelle la classe du même type d'objets est simulée est définie comme "un élément pouvant être clairement identifié". Tout comme chaque objet est particulièrement caractérisé par un ensemble de valeurs de propriétés, l'essence doit définirainsi ensemble d'attributsqui permettrait de distinguer les spécimens d'entité individuels. Chaque cas d'une entité doit être distingué de tout autre exemple de la même entité (cette exigence est similaire à l'exigence de l'absence de tuples-duplicats dans des tableaux relationnels). Par exemple, pour l'identification sans ambiguïté de chaque instance de l'entité des employés, l'attribut Numéro Tabel est introduit, qui, en raison de sa nature, aura toujours une valeur unique au sein de l'entreprise. C'est-à-dire que l'identifiant unique de l'entité peut être un attribut, une combinaison d'attributs, une combinaison d'obligations ou une combinaison de connexions et d'attributs, distinguant de manière unique toute instance de l'entité provenant d'autres cas de l'essence du même type.

L'entité a nom,unique dans le modèle. Où nom de l'entité -c'est nom de typepas une instance spécifique.

Les entités sont divisées par fortet faible.L'essence est faible si son existence dépend de l'autre entité forte par rapport à Knei. Par exemple, l'entité "subordonnée" est faible par rapport à àentités "Employee": Si un enregistrement est supprimé, correspondant à certains employés avec subordonnés, les informations de subordination doivent également être supprimées.

Propriétés.Propriétés de la nature comme caractère de communicationles propriétés avec essence (objet) peuvent être différentes. Considérez les principaux types de propriétés.

La propriété peut être plusieursou alors célibataire -i.E. L'attribut définissant la propriété peut simultanément plusieurs valeurs ou, respectivement, une seule. Par exemple, un employé peut avoir plusieurs spécialités, mais le seul sens est "Numéro tabel".

La propriété peut être simple(non soumis à une division supplémentaire du point de vue des tâches appliquées) ou composite -si sa valeur est composée des valeurs des propriétés simples. Par exemple, la propriété "Année de naissance" est simple et la propriété "adresse" est composite, car elle inclut les valeurs des propriétés simples de la "ville", "rue", "maison".

Dans certains cas, il est utile de distinguer de baseet dérivéspropriétés. Par exemple, le "fournisseur" peut avoir un "nombre total de pièces fournies", qui est calculé par la résumé du nombre de pièces fournies par lui par le projet.

Si la présence d'une certaine propriété pour toutes les instances de l'entité n'est pas obligatoire, une telle propriété est appelée. conditionnel.Par exemple, tous les employés ne disposent pas de la propriété "degré scientifique".

Les valeurs de propriété peuvent être permanentes - statiqueou alors dynamiquec'est-à-dire changer avec le temps. Par exemple, la propriété "Numéro tabel" est statique et "l'adresse" est dynamique. La propriété peut être incertains'il est dynamique, mais sa valeur actuelle n'est pas encore définie.

La propriété peut être considérée comme clési sa valeur est unique et, peut-être, dans un contexte spécifique, identifie définitivement l'essence. Par exemple, un subordonné de certains employés.

La communication.Outre les liens entre l'objet et ses propriétés, le modèle d'infographie reflète la relation entre les objets de différentes classes. DANS la communicationdéterminé comme "association, combinant plusieurs entités". Cette association peut toujours exister entre différentes entités ou entre l'essence et elle elle-même (communication récursive).

Comme l'essence, la connexion est taperconcept, c'est-à-dire que toutes les instances d'entités contraignantes sont soumises aux règles relatives aux types de liaison. Le principe de différences dans les types de liens entre types et instances est illustré par le diagramme ER des types et des instances illustrées à la Fig. 5.5

Les entités combinées par la communication sont appelées participants. Degré de communicationdéterminé par le nombre de participants à la communication.

Si chaque copie de l'entité participe, au moins dans une copie de la communication, une telle participation de cette entité est appelée. plein(ou alors obligatoire);autrement - incomplet(ou alors optionnel).

La nature quantitative de la participation des instances d'entités (une ou plusieurs) est définie type de communication(ou alors capacité de communication)Les types suivants sont possibles: "Un par un"(1:1), "Un à plusieurs"(1m), "Beaucoup à un"(M: 1), "Plusieurs à plusieurs"(M: m).

Il convient de noter que l'outil Cravate est un moyen de représentation objets complexeschacun d'eux peut être considéré comme beaucoup d'une manière ou d'une autre interdépendamment objets simples.La division en objets simples et complexes, ainsi que la nature de la relation, est conditionnelle et est déterminée par les caractéristiques de l'analyse de la matière, à savoir, à la fin, la nature de l'utilisation de ces différentes applications dans la résolues tâches appliquées. Dans ce cas, du point de vue, par exemple, le concepteur, la partie est un objet complexe et du point de vue du fournisseur - simple.

Parmi de nombreuses variantes des relations, c'est la relation la plus fréquente d'un type hiérarchique, comme "une partie - tout" "," tige est gentil. "

La relation "partie - tout" est utilisée pour représenter objets composés.Par exemple, les machines sont constituées de nœuds, de nœuds consistent en pièces. Ici est possible comme une relation "Un à plusieurs",donc je. "Plusieurs à plusieurs".

Le ratio "tige - vue" - pour la présentation objets généralisés. Par exemple, les employés sont subdivisés par la profession sur les concepteurs, les programmeurs, les travailleurs; Programmeurs - sur les programmeurs appliqués et les programmeurs système. Les relations hiérarchiques, et en particulier, des "espèces génériques" sont couramment utilisées comme base pour classer les objets en fonction des ensembles de caractéristiques. De plus, "espèce" objets hériterpropriétés de "naissance".

Un autre type d'interconnexion largement utilisé est l'agrégation - combinant des objets simples dans un complexe sur le principe de leur appartenance agrégatou leur participation commune à un processus. L'agrégation, considérée ici, comme un cas plus général de relations hiérarchiques, combine des objets de nature différente avec la seule propriété commune de la "participation commune". Les objets agrégés sont généralement mentionnés par des noms non agrandis, par exemple, "Structure":SUBDIVISION comprendDes employés; "Fournir":FOURNISSEUR délivreDes détails.

Superypes et sous-types.Essence peut être divisé en deux ou plusieurs exclusives mutuellement exclusives sous-typeschacun d'entre eux inclut des attributs généraux et / ou une communication. Ces attributs et / ou communications communs sont clairement définis une fois à un niveau supérieur. Les sous-types peuvent déterminer leurs propres attributs et / ou liens. En principe, la libération de sous-types peut continuer à des niveaux inférieurs, mais dans la plupart des cas, il y a suffisamment de deux ou trois niveaux.

L'essence sur la base de laquelle des sous-types sont déterminés, appelés superype.Les sous-types doivent former un ensemble complet, c'est-à-dire une instance de la supera consiste à se rapporter à une subtepa. Parfois, pour l'exhaustivité de l'ensemble, vous devez déterminer le sous-type supplémentaire, par exemple, d'autres.

Le sous-type hérite des propriétés et des connexions du superype. Par exemple, le type d'essence PROGRAMMEURc'est un sous-type d'essence Employé.Les programmeurs ont toutes les propriétés des employés et participent à toutes les connexions, mais les déclarations inverse sont incorrectes.

Type d'entité, ses sous-types, sous-types de ces sous-types, etc. hiérarchie des types d'entité,un exemple dont il est montré à la Fig. 5.6.

Modèle "essence - communication"

Nom et prénom

Bayramov Alexander Mavelievich

Lieu de travail

MBOU Secondary School №6 Vyazma Smolensk Région

Positionner

Chose

informatique et TIC

Cette page décrit et illustre l'utilisation du modèle "modèle d'entité-relation", introduite par Peter Chen Chen en 1976. Dans cet article, Chen a porté la base du modèle depuis ensuite élargi et a été modifié par le Chen lui-même et de nombreux autres. . En outre, le modèle «essence-communication» est devenu une partie de l'ensemble des outils de cas, qui ont également contribué à son évolution. À ce jour, il n'existe pas de norme généralement acceptée pour le modèle «essence-communication», mais il existe un ensemble de structures communes qui sous-tendent la plupart des variantes de ce modèle. Description de ces conceptions générales et démonstrations de leur application et est dédiée à ce chapitre. Les symboles utilisés pour la représentation graphique du modèle "essence-communication" sont assez différents. Nous discuterons non seulement des personnages traditionnels, mais également des symboles de la langue UML (langage model unifié, une langue de modélisation unifiée) - les outils de conception qui conquièrent une popularité croissante parmi les programmeurs de l'OOP et comprennent le modèle «Essence-communication».

Les éléments clés du modèle "Essence-communication" sont:

    essence

    les attributs

    identificateurs

    la communication

Essence

L'entité est un objet identifiable dans l'environnement de travail de l'utilisateur, ce que l'utilisateur souhaite observer. Des exemples d'entités peuvent servir d'employé de Mary Dow, client 12345, commander 1000, vendeur John Smith ou produit A4200. L'essence du même type est regroupée dans les classes d'entité. Donc, la classe d'entité L'employé est un ensemble de toutes les entités de l'employé. Dans le texte des livres, les classes d'entités sont indiquées par des lettres majuscules.

Il est important de clarifier la différence entre la classe d'entités et une instance de l'entité. L'entité classe est une totalité des entités et décrit la structure ou le format d'entités qui composent cette classe. L'instance d'entité (instance d'entité) présente une essence spécifique, telle qu'un client 12345; Il est décrit par les valeurs d'attribut de cette entité. Habituellement, la classe d'entité contient de nombreuses instances essentielles. Par exemple, la classe client contient de nombreuses instances - une pour chaque client pour laquelle il existe une entrée dans la base de données. Un exemple de classe d'entité et de deux instances essentielles est illustré à la Fig. une.

Figure. 1. Client: Exemple d'essence

Les attributs

Les entités ont des attributs (attributs) ou, comme ils sont parfois appelés, propriétés (propriétés), qui décrivent les caractéristiques de l'essence. Des exemples d'attributs peuvent servir d'instance, de données et de codec. Dans le texte de ce site, les attributs sont désignés à la fois en majuscules et en minuscules. Dans le modèle "Essence-Communication", il est supposé que toutes les instances de cette classe d'entités ont les mêmes attributs.

La définition initiale du modèle "Essence-communication" comprendcomposite Attributs (attributs composites) etmultiple Attributs (attributs multi-valeurs).

À titre d'exemple d'attribut composite, vous pouvez citer une adresse d'attribut composée d'un groupe d'attributs (rue, ville, ville, index). Un exemple d'attribut multi-valeurs peut servir d'attribut de l'importation de l'essence du client, qui peut contenir les noms de plusieurs personnes de confiance de ce client.

L'attribut peut être simultanémentet composite et multivalués - Par exemple, un téléphone d'attribut composite composé d'un groupe d'attributs (région de code, un local) peut être multi-valorisé, ce qui permettra plusieurs numéros de téléphone dans la base de données de la même personne dans la base de données. Dans la plupart des implémentations, le modèle "Essence-communication", des attributs composites sans ambiguïtés sont ignorés et il est nécessaire que les attributs multiples (qu'ils soient composites ou non) sont convertis en essence, comme indiqué ci-dessous.

Identificateurs

Les instances d'entité ont des identifiants (identifiants) - attributs, avec lesquels ces instances sont mentionnées ou sont identifiées. Par exemple, des copies des entités de l'employé de la classe peuvent être identifiées par les attributs du service de chambre, un tableau ou une instance. Les attributs tels qu'un salaire ou de la source de données peuvent difficilement servir d'identifiants d'instances d'entités de classe, car ces attributs ne sont généralement pas utilisés pour une instruction sans équivoque sur un employé particulier. Comme cela, l'essence du client de classe peut être identifiée par les attributs d'un numéro ou d'un nom du nom, et l'entité de classe de la commande peut être identifiée par l'attribut du numéro.

L'identifiant de l'instance d'entité consiste en un ou plusieurs attributs de l'essence. L'identifiant peut êtreunique (Unique) oudéraisonnable (Nonunique).

Si l'identifiant est unique, sa valeur indiquera une seule et une seule instance de l'entité.

Si l'identifiant est à naître, sa valeur indiquera quelques instances multiples. Le support de la table est le plus probable qu'un identifiant unique et une imagerie est unique (par exemple, plusieurs employés peuvent être nommés John Smith).

Les identificateurs consistant en plusieurs attributs sont appeléscomposite identificateurs (identificateurs composites). Les exemples peuvent servir de combinaison de la forme (Codegion, de la section locale), (nomProduction, nom, nom) et (nom, nom de famille, add-on-référence).

la communication

Les relations entiétaux sont exprimées par des relations (relations). Le modèle "Essence-communication" comprend des classes de liens et des instances de connexions. Classes de relations - Il s'agit d'une relation entre les classes d'entité et les instances de relation (instances de relation) - la relation entre les instances d'entités. Les relations peuvent avoir des attributs.

La classe de liens peut affecter plusieurs classes d'entités. Le nombre de classes d'entités impliquées dans la communication s'appelle le degré de communication (degré de relation). Représenté à la Fig. 2 et le service vendeur-commander a un diplôme 2, puisqu'il participe à deux classes d'entités: le vendeur et l'ordre. Parent de communication sur la Fig. 2; B tient degré 3, comme trois grades d'entités y participent: mère, père et enfant. Les liens du degré 2 sont très courants, ils sont souvent appelés relations binaires (relations binaires).

Fig.2. Différents degrés de liens: A - Build 2; B - degré de diplôme 3

Trois types d'obligations binaires

En figue. 3 montre trois types d'obligations binaires. Dans la connexion 1: 1 ("une à une à une"), une copie unique de l'entité d'un type est associée à une seule instance de l'essence d'un autre type. En figue. 3, et le service du service_automobile associe l'essence unique de l'employé de la classe avec une seule essence de la voiture de classe. Conformément à ce diagramme, aucun autre employé n'est fixé pour plus d'une voiture et aucune voiture n'est corrigée dans plus d'un employé.

Figure. 3. Trois types de relations binaires: une connexion binaire 1: 1; B - Connexion binaire 1: N; B - Connexion binaire N: M; G-Présentation de la communication par branche

En figue. 3, b représente le deuxième type de communication, 1: N ("un à n" ou "un à plusieurs"). À cet égard, qui s'appelle un dortoir résidentiel, une copie unique de l'entité d'une classe d'une auberge d'auberge est associée à de nombreuses instances de l'essence de classe étudiante. Conformément à ce modèle, de nombreux étudiants vivent dans l'auberge, mais chaque étudiant ne vit que dans une auberge d'auberge.

La position dans laquelle 1 et N stands est importante. L'unité se situe de l'autre côté de la connexion, où se trouve l'auberge de jeunesse et n est de l'autre côté de la communication, où se trouve l'élève. Si 1 et N étaient situés au contraire et que la connexion serait enregistrée comme n: L, il aurait eu lieu qu'un étudiant vit dans une auberge et que chaque étudiant vit dans plusieurs auberges. Ceci, bien sûr, n'est pas le cas.

En figue. 3, le troisième type de connexion binaire est montré, N: M (lu "n à m" ou "beaucoup à plusieurs"). Cette connexion s'appelle un club et lie des copies des entités de classe étudiante avec des instances de l'entité du club. Un étudiant peut être membre de plusieurs clubs et de nombreux étudiants peuvent être composés d'un club.

Les chiffres à l'intérieur du losange, symbolisant la communication, indiquent le nombre maximal d'entités de chaque côté de la communication. Ces restrictions sont appelées nombres fondamentaux maximaux et une combinaison de deux restrictions de ces deux parties s'appelle la cardinalité maximale (cardinalité maximale) de la communication. Par exemple, environ la connexion illustrée à la Fig. 3, B, ils disent qu'il a une cardinalité maximale de 1: n. Les numéros cardinaux peuvent également avoir d'autres significations, non seulement 1 et N. Par exemple, la connexion entre les essences de la basketball_communication et le joueur peut avoir une cardinalité de 1: 5, qui nous dit qu'il ne peut y avoir plus de cinq joueurs. dans l'équipe de basketball.

Communication des trois types présentés à la Fig. 3, on appelle parfois des relations telles que "a" ou possessions (a - une relation). Un tel terme est utilisé car une entité a (a) avec une autre entité. Par exemple: un employé a une voiture, un étudiant a une auberge de jeunesse, le club a des étudiants.

Schémas montrés à la Fig. 3, appelés graphiques "Entity-communication" ou diagrammes ER (diagrammes ER) (diagrammes de relation ERTI, ER-DIGRAMS). De tels diagrammes sont normalisés, mais pas trop difficiles. Conformément à cette norme, les classes d'entités sont désignées par des rectangles, les liens sont notés par des losaux et le nombre de radicaux maximum de chaque connexion est indiqué à l'intérieur du losange. Le nom de l'entité est indiqué à l'intérieur du rectangle et le nom de la communication est indiqué à côté du losange, bien que dans certains diagrammes, le nom de la communication est indiqué à l'intérieur du losange, tandis que le diagramme peut sembler terriblement, car le losange doit faire une grande taille et une échelle de sorte que le nom de la communication soit placé dans eux. Pour éviter cela, les noms des connexions écrivent parfois sur le losange. Lorsque le nom est placé à l'intérieur ou au-dessus de la losange, la cardinalité de la connexion est décrite par des branches sur les lignes reliant l'essence (ou l'entité) avec le côté multiple de la communication. En figue. 3, G montre les connexions des résidents d'auberges et d'un club d'étudiant avec une telle ramification.

Comme nous l'avons déjà parlé, le cardinal maximum montre le nombre maximum d'entités pouvant participer à la connexion. Quel est le nombre minimum de telles entités, les diagrammes présentés ne sont pas signalés. Par exemple, la Fig. 3, B montre qu'un étudiant peut vivre un dortoir maximum, mais il n'est pas clair de savoir si un étudiant est obligé de vivre dans n'importe quelle auberge.

Pour spécifier une cartouche minimale (cardinalité minimale), il existe plusieurs façons. L'un d'entre eux, démontré à la Fig. quatre.

Figure. 4. Communication avec la cartinalité minimale

Cette méthode est la suivante: Pour montrer que l'essence est obligée de participer à la connexion, perpendiculaire à la ligne est placée sur la ligne de connexion et montrer que l'entité peut (mais non obligée) de participer à la connexion, ovale est placée sur la ligne de communication. En conséquence, la Fig. 4 montre que l'essence de l'auberge doit être associée à au moins une entité de l'étudiant, mais l'entité de l'étudiant n'est pas obligée d'avoir une connexion avec l'essence de l'auberge. La gamme complète de restrictions imposées à la relation est que l'auberge a un nombre cardinal minimal égal à un et le nombre cardinal maximal égal aux «nombreuses» entités de l'étudiant. L'élève a un nombre cardinal minimum égal à zéro et le nombre cardinal maximum égal à une instance de l'essence de l'auberge.

Il peut y avoir une connexion entre les entités de la même classe. Par exemple, l'entité de l'étudiant peut être déterminée par le contact du voisin. Cette connexion est illustrée à la Fig. 5, et et à la Fig. 5, b représente des copies d'entités couvertes par cette relation. Les liens entre les entités de la même classe sont parfois appelés relations récursives (relations récursives).

Fig.5 Communication récursive

Modèle logique Les données (essentielles) sont une représentation logique indépendante des données.

Modèle physique (Table) Les données contiennent des définitions de tous les objets implémentés dans une base de données spécifique pour un SGBD spécifique.

Les modèles sont la pierre angulaire de la conception. Les ingénieurs devraient construire un modèle de voiture, élaborer tous les détails avant de l'exécuter dans la production. De la même manière, les ingénieurs du système développent d'abord des modèles pour étudier la logique commerciale et approfondir la compréhension de la structure de la base de données.

Dans la dernière conférence, nous avons connu des méthodologies IDEF0 et DFD qui vous permettent de décrire les processus opérationnels qui coulaient dans le système d'information. Dans le modèle DFD, nous avons examiné l'élément - un entrepôt de données indiquant les types d'informations que le système fonctionne. Cependant, cette méthodologie n'est pas destinée à décrire la structure des informations stockées. Pour cela, diverses relations entiétaux sont plus appropriées - des graphiques (diagrammes essentiels), dont une description de la structure des données stockées et la relation entre elles. Méthodes qui vous permettent de convertir de telles données à un ensemble de commandes qui créeront le stockage (tableaux) nécessaires à l'intérieur de la base de données du système d'information.

Er modélisation

Dans les systèmes d'information, les données sont divisées en catégories ou entités distinctes. Après tout, nous nous souvenons que la base de données est un ensemble de données structurées. Les données de différents types sont stockées séparément. La tâche du modèle ER est de montrer quels types d'informations sont stockés dans le système, quelle structure et leur interconnexion sont interconnectés. Le modèle ER repose sur la base d'une analyse commerciale (diagramme DF construit). Dans le même temps, initialement, chaque stockage sur le diagramme DF devient essentiellement sur le diagramme ER. Au cours d'une analyse ultérieure, ils peuvent être écrasés en partie. Il convient de noter que les modèles ER sont plus résistants aux changements de structure de l'entreprise que les diagrammes DF. Les processus métier peuvent changer, mais les informations sont nécessaires pour leur mise en œuvre, reste souvent inchangée.

Les principaux avantages des modèles ER:

  • Le format exact et compréhensible de documenter la structure des informations.
  • Vous permet de spécifier les exigences de données et les relations entre elles.
  • Vous permet d'afficher visuellement la structure de stockage pour faciliter la conception de la base de données.
  • Il existe des méthodes d'affichage des modèles ER dans la table de base de données et le dos.
  • Jeter la base de l'intégration avec d'autres applications.

Les principaux types d'objets sur le diagramme ER:

  • Entité (entité) - Type d'objets dont les informations seront stockées dans la base de données. Par exemple: départements, employés, biens, frais généraux.
  • Attribut - dont les éléments sont essentiellement. Par exemple, pour l'entité "Marchandises" Les attributs peuvent être "Nom", "Description", "Quantité", "Prix" et autres, en fonction des besoins du système d'information. En fonction de la notation du diagramme ER à côté de l'attribut, autre que son nom indique le type et l'obligation de remplissage. La diapositive présente le diagramme ER dans la notation "Ingénierie de l'information", selon laquelle le nom, le type, le type, est indiqué pour l'attribut et est une marée externe et / ou primaire.
  • Communication (relation) Afficher les connexions entre entités. Par exemple, un employé travaille dans le département où "département" et "département" est essentiellement.

Essence - Un ensemble d'objets du monde réel, chacun ayant les caractéristiques suivantes:

  • Unique (peut être séparé de tous les autres de quelque manière que ce soit)
  • Joue un rôle dans le système simulé
  • Peut être décrit par un ou plusieurs éléments d'information (attribut)

Exemple: personnes, personnel, événements, commandes, ventes, acheteurs, fournisseurs

L'attribut décrit certaines des propriétés de l'essence. L'essence peut avoir de nombreux attributs, mais seuls ceux-ci sont sélectionnés pour le système. Les attributs sont divisés en clés (touches d'entité) et descriptifs (descripteurs d'entité). Les attributs de clé doivent être identifiés de manière unique par les spécimens d'entité. Pour chaque attribut, un domaine doit être spécifié (type, domaine).

La diapositive montre comment les entités et les attributs de différentes notations de modèles ER sont écrits. Dans toutes les notations, l'entité est un objet rectangulaire, au sommet du nom de l'essence indiquée. Sous le nom même des attributs figurent.

Regardons plus en détail les attributs de clé. Ceci est important pour comprendre les types de connexions entre entités.

Termes de base

Le modèle relationnel peut être décrit par langue mathématique si nécessaire, c'est-à-dire la plus précise de la personne inventée. Vous trouverez ci-dessous des définitions incroyables de certains concepts du modèle relationnel.

  • "Type de données" (Type, Domean - Domain) - Beaucoup de valeurs autorisées ("zone de définition") et d'opérations. Pour tous les types, il existe des opérations de comparaison et d'affectation. Les valeurs ne sont pas interdites d'avoir une structure, par exemple un objet.
  • "Relation" (Relation) - Nombreux attributs: noms uniques avec raffinement de type de données; De plus, l'ensemble des "ensembles de valeurs" ("lignes") correspondant aux attributs. Les valeurs dans les ensembles ne peuvent être représentées que par des valeurs simples des types de types correspondants, c'est-à-dire d'être des scalaires ("1ère forme normale").
  • "Key" (clé) est un groupe d'attributs dont les valeurs de tous les ensembles sont différentes, mais aucun sous-groupe de ces attributs n'a pas de propriété (la propriété "minimale" de la clé). En particulier, le groupe peut consister en un seul attribut. La clé par rapport à la nécessité est toujours, et s'il y en a plusieurs, l'un d'entre eux doit être nommé «primaire» (primaire).
  • La "clé externe" (clé étrangère) est un groupe d'attributs dont les valeurs de chaque ensemble de ratios sont nécessaires pour coïncider avec les valeurs clés d'une autre relation. Les clés externes ne sont pas requises et proclamées par des besoins de modélisation.
  • "Opération" (opération) - une pluralité d'actions générales sur les relations en conséquence, la relation ("fermeture d'opérations"). Utilisé pour obtenir de nouvelles relations dans les besoins de la simulation ultérieure ou lors de la suppression des données nécessaires de la base. La liste des opérations peut être déterminée de différentes manières; Dans les premières phrases, le modèle a reçu huit opérations (projections, composés, sélection, etc.), pas de jeu minimal, en tant que compromis entre le manque de redondance et la facilité d'utilisation.
  • " Base de données relationnelle" (Base de données relationnelle) - un ensemble de relations.

Le "type de données" est parfois appelé "domaine" (domaine), mais parfois sous le "domaine", il n'y a qu'une "zone de définition" de valeurs. Le "ensemble de valeurs" (tuple) en russe est appelé différemment le "tuple" ou "N-Koy".

Pour plus de commodité, la relation est souvent représentée sous forme de tableaux, bien qu'une telle représentation soit illégalement (ni l'ordre des attributs ni l'ordre de magnitude, contrairement à la table). Dans SQL, sur la base desquels le DBMS Oracle, le concept de "relation" comme outil de modélisation est remplacé uniquement sur la "table". Une autre présentation de ces relations peut être hypercube, et il est également parfois pratique de recourir au raisonnement sur la base de données disponible.

Si vous refusez le mot de définition «relationnel», le terme «base de données relationnelle» peut être traduit comme «relation de base de données» (plus précisément », BD Construit À travers. relations "; relations comme un outil, pas un objet de modélisation: sinon, le terme source serait une base de données relationnelle). De même, le terme" modèle relationnel "peut être traduit en tant que" modèle de relation ", c'est-à-dire" le système de Concepts de construction d'un modèle de domaine sous la forme d'une relation définie. »Pour un certain nombre de raisons, y compris des personnages historiques et de langue, cela n'a pas été fait à la fois.

Toutes les relations de données sont décrites. évident et seul Les valeurs dans les ensembles (dans d'autres approches de la modélisation peuvent être autrement). Aucune dépendance "implicite" (y compris au niveau de la logique du programme), à \u200b\u200bl'exception des variables formulées, no. L'approche relationnelle délimite la description des données et l'application associée de la logique logicielle (en revanche, par exemple, une approche d'objet).

La présente vision de la base de données relationnelle (un ensemble de relations et d'opérations) est caractéristique de algèbre relationnelle. Ce n'est pas le seul point de vue. Chaque ensemble de valeurs dans une relation variable peut être compris comme une déclaration vraie ("prédicat"): il existe un tel employé avec de telles propriétés; Un tel ministère et ainsi de suite. Ainsi, la base de données relationnelle à tout moment est un ensemble de véritables déclarations sur le sujet, formulées par des relations. En fait, un ensemble de déclarations dans des relations variables et constitue un modèle du sujet représenté par la base de données. Une telle vue sur la base de données relationnelle est caractéristique de calcul relationnel. Les deux vues sur le modèle relationnel sont bien étudiées et prouvées par leur équivalence expressive.

Pour les termes énumérés sur la diapositive précédente, il existe des équivalents informels, afin de mieux comprendre et de vous rappeler leur signification:

  • Attitude → Table
  • Message → Chaîne, enregistrement
  • Cardinalité → Nombre de chaînes
  • Attribut → Colonne, champ
  • Diplôme → Nombre de colonnes
  • Touche principale → identifiant
  • Domaine → Zone de valeurs admissibles

Champs clés

Une partie des attributs de la relation est la clé ou les clés. Plusieurs types de clés sont distingués:

  • Une clé simple - consiste en un attribut, composite - de plusieurs.
  • Touche potentielle - attribut ou ensemble d'attributs pouvant identifier chacun des utilles de la relation. Par exemple, par rapport au bureau des passeports («Numéro de passeport») et («Nom complet» et «Date de naissance») - Touches potentielles qui permettent un moyen unique d'identifier chaque personne.
  • À chaque égard, il ne peut y avoir qu'une seule clé primaire - un attribut ou un ensemble d'attributs de la valeur dont une solution unique identifie chaque entrée. Si plusieurs ensembles d'attributs ont des propriétés telles que l'une d'entre elles est sélectionnée primaire et toutes les autres sont alternatives.
  • Touche externe - Magasins valeur La principale clé d'une autre relation. Les clés externes sont utilisées pour communiquer entre les relations.

Clé primaire

  • Chaque ratio relationnel n'a qu'une clé primaire, toutes les autres sont alternatives.
  • La valeur de tous les attributs de clé initiale ne pas Peut être indéfini. Par exemple, l'attitude stocke des informations sur les habitants de la ville. Touche principale - Composite (nom, nom de famille, date de naissance). Le système d'information a été installé en Islande, où les noms ne sont pas utilisés, puis le "nom de famille" pour la plupart des tuples seront vides. Malgré cela, la clé principale continuera d'identifier de manière unique chacun des tuples. Cependant, il est inacceptable que les valeurs au même moment de tous les attributs de clé initiale étaient vides.
  • La valeur de la clé primaire n'affecte pas l'emplacement des tuples de la présentation de la table. Même si la valeur de la clé primaire est un nombre (par exemple 1,2,3 ...) en général, cela ne garantit pas que les cortices à l'intérieur de la base de données sont stockées dans le même ordre et seront affichées de la même manière. . Dans le "cas général", cela signifie parfois que les spécificités d'une ligne SGMS spécifique peuvent être stockées dans une clé primaire, mais c'est plutôt une exception. Dans le cas de la sortie des résultats de la requête, nous devons indiquer explicitement l'ordre dans lequel vous souhaitez afficher les chaînes si une telle commande est importante. Les résultats de la demande "Donnez-moi les 5 premières personnes" sont imprévisibles si nous ne spécifions pas, dans quels critères ils devraient être "en premier".
  • La clé principale n'affecte pas l'accès aux attributs du prix. Par exemple, par rapport à la "table des passeports", ainsi que le nom et la date de naissance, l'adresse de l'enregistrement humain est conservée. Nous pouvons demander à la base de données d'extraire toutes les adresses, de ne pas connaître le nom et la date de naissance.

Clé externe

La clé externe est utilisée pour établir des relations entre les relations. Par exemple, prenez deux relations "propriétaires" (la clé principale "Numéro de passeport") et "Immobilier". Pour établir qui possède chacun des objets de l'immobilier, nous connectons ces relations par la valeur de l'attribut "numéro de passeport". Contrairement à la clé primaire, la valeur de clé externe peut être indéfinie (ligne 4 sur la diapositive) - si nous ne connaissons pas le propriétaire de la propriété, nous ne le précisons pas. Contrairement à la clé primaire, la valeur de clé externe peut être répétée (coups 1.3 sur la diapositive) - un propriétaire peut avoir plusieurs objets immobiliers. Cependant, le fait que l'attribut "numéro de passeport" par rapport à "immobilier" est une clé externe de la clé primaire de la relation "propriétaire" garantit que seules les valeurs de la clé principale peuvent être la valeur du nombre de pasteur. attribut. Nous ne pouvons spécifier le numéro du pastorat de personne qui n'a pas de "propriétaire" (ligne 5) comme valeur d'attribut (chaîne 5).

En installant la clé externe, vous pouvez définir explicitement le comportement du SGBM si vous modifiez la valeur de la clé principale ou supprimez le tuple. Cependant, il est enregistré par la règle "seules les valeurs situées dans la clé primaire ou une valeur indéfinissable (NULL) sont stockées dans la clé externe.

La clé externe entre la relation est définie, généralement lors de la conception d'une base de données. Cependant, il peut être supprimé à tout moment ou à nouveau si l'ajout de cette restriction ne contredit pas les propriétés de la clé externe. L'élimination / l'installation de clés externes est généralement faite lors de l'insertion de très grandes quantités de données, d'accélérer ce processus, les SGBD ne peuvent pas stocker de données non inflexibles (incorrectes, erronées), car elles vérifient chaque restriction lors de l'insertion de chacune des lignes.

Modèles ER: Communication

Les modèles ER, des clés externes sont affichées en tant que connexions.

Chaque communication est caractérisée par 4 propriétés - puissance, puissance, degré et participation de l'essence en matière de connexion.

Nous analyserons ces caractéristiques.

Participation des essences en lien

Dénote en contact avec une ligne transversale ou un cercle.

La ligne transversale signifie obligatoire (obligatoire.) Participation de l'entité en relation et un cercle - optionnel (optionnel).

En cas de participation obligatoire de l'essence dans le cadre de la description de cette communication, le verbe est utilisé " devrait". S'il n'est pas nécessaire de participer à l'entité en relation avec le verbe" pouvez".

Dans le département pouvez Travailler plusieurs employés. Employé devrait Travailler dans certains départements.

Degré de communication ( relationship. dEGRÉ.) indique le nombre d'entités associées. Connexion binaire ( binaire. relationship.) Décrit les associations de deux entités. Communication Terner (ternaire. relationship.) Il existe une place lorsque trois entités sont associées. Communication unie (unia relationship.) Décrit des associations dans une seule entité.

Les obligations binaires sont les plus courantes - ils relient deux entités différentes («ministère» - «Officier», «Commandez» - «Marchandises», «Cours» - «Conférences», «Groupe» - «Étudiants»). Moins communs, mais des connexions toujours uniques sont souvent utilisées. Avec leur aide, les attitudes de nidification sont généralement définies sur le même type d'objets (le ratio "Pièces" - nous pouvons spécifier le composant dont le détail est-ce, le ratio des "employés" - nous pouvons spécifier qui des employés est le patron pour ça).

La puissance de communication indique le nombre d'instances d'une entité associée aux instances d'une autre entité.

Le pouvoir peut être:

  • un par un (1: 1) - dans le groupe d'étudiants, un plus ancien;
  • un à plusieurs (1: N) - Il y a beaucoup d'employés dans un département;
  • de nombreux co-beaucoup (M: N) - Un acheteur a acheté beaucoup de biens, les biens ont acheté beaucoup d'acheteurs.

Force de communication: solide communication (relation d'identification)

Une filiale ne peut exister sans parentale. (Il n'y a pas de réponse sans une question; il n'y a pas de produit dans le panier de l'utilisateur, s'il n'y a pas de panier lui-même)

Dans le même temps, la clé principale migre de l'essence parentale dans une filiale, où elle fait partie de la clé primaire.

Dans un diagramme, une liaison forte est affichée dans une ligne indissociable entre entités.

Force de communication: relation faible (relation non identifiant)

Les entités parentales et subsidiaires sont connectées, mais une entité enfant peut être créée plus tôt. (La charge appartient à la commande, mais la cargaison peut être en stock, avant la création de la commande).

La clé principale migre de l'essence parentale en enfant et ne fait pas partie de la clé primaire (elle devient simplement une clé externe).

Dans un diagramme, une liaison forte est affichée par une ligne pointillée entre les entités.

Communication récursive (unaire)

Le plus souvent utilisé pour construire une hiérarchie.

Le fournisseur peut travailler avec zéro ou plus de clients (ID_CUSTOMER).

Le client doit fonctionner avec un fournisseur (ID_SUP).

Mais le fournisseur et le client sont de savoir si la société est l'organisation - les objets du même type et sont donc stockés à un seul respect.

Communication de plusieurs copains.

Exemple: les fournisseurs peuvent fournir de nombreux types de marchandises. Différents fournisseurs peuvent fournir les mêmes types de biens.

La communication par plusieurs à plusieurs, admissible du point de vue du modèle ER, mais ne peut pas être directement reflétée en termes d'algèbre relationnelle.

L'ambiguïté de la communication est autorisée à introduire des entités transitoires, comme indiqué sur la diapositive.

Modèle et réalité

Lors de la révision de plus près du type de connexion "Un à un", il s'avère presque toujours que A et B sont en réalité des subventions différentes du même sujet ou de différents points de vue, avoir simplement des noms d'excellents et des connexions et des attributs décrits différemment.

Imaginez que A - Fournisseur, B - Produit.

Obligatoire-obligatoire.Par exemple, ce qui est donné sur la diapositive, cette connexion signifie que chaque fournisseur (fournisseur) devrait livrer un seul unique Ensemble de marchandises (facture). Du point de vue de la théorie, tout va bien ici. En pratique, ce n'est pas acceptable: personne ne cherchera un nouveau fournisseur si le fournisseur que vous êtes vérifié peut fournir plusieurs gammes de produits. Et maintenant sur les émotions, le chat profitera de l'opérateur lorsque vous essayez d'entrer des données sur un nouveau fournisseur. Il ne sera pas en mesure de saisir les données dans aucune des tables. Donc, tous les bagages du vocabulaire indécent seront envoyés à votre adresse.

Facultatif-obligatoire. Un exemple de communication est donné sur la diapositive. Comme nous pouvons voir l'opérateur maintenant, tout va bien: il peut entrer des données. L'entreprise a de nouveau un problème: il doit rechercher un nouveau fournisseur, même si le fournisseur que vous êtes coché peut fournir plusieurs gammes de produits. L'entreprise a-t-elle besoin de problèmes? Pas. Ça doit fonctionner. Comment satisfaire les affaires? La réponse est simple. Lors de la conception de la base de données, vous devez penser à la normalisation. Si le fournisseur est essentiellement, utilisez la facultative (en option) ou en option) ou en option-facultatif. Bien que le plus souvent un à un soit une erreur.

Facultatif-facultatif. Comme on voit, l'opérateur à nouveau, tout va bien, et l'entreprise a encore un problème. Résumons pour une connexion un à une. Si les entités sont impliquées dans le cadre de: - obligatoire - obligatoire, un tel lien n'a pas de droit à la vie; - Facultatif-Obligatoire (Obligatoire-Facultatif) ou facultatif-Facultatif, alors le support commercial est problématique.

La communication à une copie obligatoire-obligatoire est une conception assez forte, qui suggère que l'entrée de l'essence B ne peut pas être créée sans créer simultanément au moins une entrée associée.

La communication un à plusieurs obligatoires-facultatif est la forme de communication la plus courante. Il suggère que chaque entrée de l'essence A peut n'existe que dans le contexte d'une (et d'une seule) entrée de l'entité B. À son tour, l'entrée B peut exister à la fois dans le cadre de l'entrée de A et sans cela.

Communication Un à plusieurs facultatif-facultatif - A et B peuvent exister sans communication entre eux.

En termes de la diapositive précédente, ces diagrammes peuvent être illustrés dans les exemples suivants.

Communication un à plusieurs. Ces obligations supposent qu'une entrée d'une table peut être logiquement liée à plusieurs enregistrements d'une autre table.

Obligatoire-obligatoire.Pour un exemple, qui est donné sur la diapositive, cette connexion signifie que chaque fournisseur (A) doit fournir un ou plusieurs ensembles de marchandises (B). Du point de vue de la théorie, tout va bien ici. Cependant, dans la pratique, l'opérateur ne sera pas en mesure d'entrer les données dans aucune des tableaux, car les enregistrements sont nécessaires. en même temps Entrez dans les deux tables.

Facultatif-obligatoire.Dans ce cas, l'opérateur est maintenant tout bon: il peut entrer des données et les entreprises peuvent avoir des problèmes. Le fait est que la connexion de facultatif-obligatoire suggère que le fournisseur (a) devrait fournir un ou plusieurs ensembles de marchandises (B), tandis que b pouvez Bellarder. En d'autres termes, les marchandises peuvent exister sans fournisseur, tandis que le fournisseur a des produits. Ceux. Peut-être des activités incontrôlées: qui a mis les marchandises? Qui demande? Les problèmes d'entreprise ont-ils besoin? Pas. Il doit donner des bénéfices. Dans ce cas, il est préférable d'utiliser Obligatoire: facultatif: le fournisseur peut fournir un ou plusieurs ensembles de marchandises, tandis que les marchandises doivent appartenir au fournisseur. En d'autres termes, les marchandises ont un fournisseur et les données sur les fournisseurs ayant une fois livrées les marchandises seront enregistrées. Et les moutons sont des prises et des loups sont pleins plein - l'opérateur peut entrer des données et un homme d'affaires dans la brousse.

Facultatif-facultatif.Comme nous le voyons, l'opérateur est à nouveau bien, et l'entreprise a un problème - surprenant: les marchandises peuvent exister sans fournisseur ni fournisseur sans produit.
Sumons-nous pour une connexion une à plusieurs. Si des entités sont impliquées dans la connexion comme: - obligatoire - obligatoire, un tel lien n'a pas droit à la vie, car il est impossible d'entrer simultanément des enregistrements dans les deux tableaux; - Facultatif-facultatif, puis le support professionnel est problématique.

Cependant, plusieurs communications sont admissibles sur les diagrammes ER, cependant, lors de la conversion d'une représentation sous une tabulation, cette connexion est remplacée par une entité intermédiaire.

Beaucoup de co-nombreux obligatoires-obligatoires - une telle conception a souvent lieu au début de la phase d'analyse et désigne une connexion - soit au courant de la fin de la fin et nécessitant une autorisation supplémentaire, ou reflétant une simple relation collective - une liste de bidirectionnelles.

Beaucoup de co-nombreux obligatoires-facultatifs sont rarement appliqués. Ces liens sont toujours soumis à des détails supplémentaires.

Connexions récursives. Ces liens suggèrent que l'entrée de la table peut être logiquement liée.

Facultatif-en option un à un. Pour un exemple, qui est donné sur la diapositive, cette connexion signifie que tout homme (femme) peut être marié avec une femme (homme). Cette relation est pratique pour suivre l'histoire du mariage: pour la première fois, ... En d'autres termes, la connexion d'un type alternatif.

Facultatif-facultatif un à plusieurs. Un exemple de communication est donné sur la diapositive. Ceci est une hiérarchie classique (structure des arbres). Le lien indiqué sur la diapositive peut être interprété, par exemple, comme suit: tout employé peut être subordonné à un seul gestionnaire, tandis que le gestionnaire peut diriger un ou plusieurs employés.

Facultatif-facultatif m: m Un exemple de communication est indiqué dans la diapositive 3. Il s'agit d'une structure de réseau.

Questions de la liste de contrôle aux essences

  • La nature de l'essence de cet objet reflète-t-elle?
  • Y a-t-il des intersections avec d'autres entités?
  • Avez-vous même deux attributs?
  • Attributs totals pas plus de huit?
  • Y a-t-il des synonymes / homonymes de cette entité?
  • L'essence est complètement déterminée?
  • Y a-t-il un identifiant unique?
  • Est-ce que quelqu'un a une connexion?
  • Existe-t-il une seule fonction sur la création, la recherche, l'ajustement, l'élimination, l'archivage et l'utilisation de la valeur de l'importance?
  • L'histoire du changement est-elle?
  • At-il une conformité aux principes de la normalisation des données?
  • Y a-t-il une telle essence dans un autre système d'application, peut-être sous un nom différent?
  • Est-ce que l'essence est trop générale signifie?
  • Le niveau de généralisation est-il incarné?

Liste de contrôle des questions aux attributs:

  • Le nom de l'attribut d'un numéro unique reflète-t-il l'essence des propriétés d'attribut indiquées par l'attribut?
  • Cela allume-t-il le nom de l'attribut le nom de l'essence (cela ne devrait pas être)?
  • L'attribut qu'une seule valeur à chaque fois?
  • Existe-t-il des valeurs répétitives (ou des groupes)?
  • Le format, la longueur, les valeurs admissibles et l'algorithme de préparation, etc. sont décrits?
  • Cet attribut peut-il être manqué par l'essence, qui utiliserait pour un autre système d'application (déjà existant ou allégué)?
  • Peut-il être manqué par la communication?
  • Existe-t-il des références à l'attribut sous forme de «fonctionnalité de projet», qui devriez-vous disparaître pendant la transition au niveau de l'application?
  • Existe-t-il un besoin d'histoire du changement?
  • Sa signification dépend-elle de cette entité?
  • Si la valeur d'attribut est obligatoire, est-ce que cela est toujours connu?
  • Y a-t-il besoin de créer un domaine pour cela et de lui comme des attributs?
  • Sa valeur ne dépend que d'une partie d'un identifiant unique?
  • Sa valeur sur les valeurs de certains attributs n'est-elle pas incluse dans l'identifiant unique dépend?

Éléments de l'entité d'entité-communication Modèle d'entité - Entité Classe - Instance d'entités Attributs - Attributs composites - Identificateurs d'attributs multivissal - Unique / non endommagé - Communications composites - Classes de relations - Instances communes - Communications récursives




Les éléments du modèle "Entity-communication" de la classe d'entités (classes d'entités) sont une combinaison d'entités, décrite par la structure ou le format d'entités qui composent cette classe. Une copie de l'entité (une instance) présente une essence spécifique de la classe d'entités occupant une pluralité d'instances d'essence.




Éléments des attributs d'attributs de modèle «Entity-communication» (Propriétés) décrivent les caractéristiques de l'essence. Un exemple d'attribut composite: adresse constituée d'un groupe d'attributs (rue, ville, index). Un exemple d'attribut multi-valorisant: un nom d'attribut d'un enseignant d'entité étudiant pouvant contenir les noms de plusieurs étudiants appris.


ÉLÉMENTS DES IDENTIFICIERS D'IDENTIFICIERS DE MODÈLES DE MODÈLES DE MODÈLES (INDITY-COMMUNICATIONS »- Attributs de quelles instances d'entités sont mentionnées ou identifiées. Si l'identifiant est unique, sa valeur indiquera une seule et une seule instance de l'entité. Si l'identifiant est à naître, sa valeur indiquera quelques instances multiples. Les identificateurs composés de plusieurs attributs sont appelés identifiants composites (identificateurs composites).


Les éléments du modèle de relations "entité-communication" des relations entre entités sont exprimés par des connexions. Les classes de relations (classes de relations) sont une relation entre les classes d'entités. Instances de communication (instances de relations) Relation entre les instances d'entités Le degré de communication (degré de relation) Le nombre d'entités participant à la connexion. Moyens dans les diagrammes UML: la communication est indiquée




Éléments du modèle "Entity-communication" Trois types de liaisons binaires Désignation par des diagrammes UML: Communication 1: 1 ("Un à un") est désigné par la connexion 1: N ("un à n" ou "un à" un à Beaucoup ") - Communication N: M (Lire" N à M "ou" Beaucoup à plusieurs ") - la connexion de la possession sous une forme généralisée, lorsque le type de communication spécifique n'est pas spécifié - le nombre à l'intérieur du losange, symbolisant la communication , indiquez le nombre maximum d'entités de chaque côté de la communication. Ces restrictions sont appelées nombres fondamentaux maximaux et une combinaison de deux restrictions de ces deux parties s'appelle la cardinalité maximale (cardinalité maximale) de la communication.




Graphiques «Essence-communication» des régimes de relations binaires indiqués ci-dessus sont appelés graphiques «entités-communication» ou diagrammes ER (diagrammes ER). Pour spécifier une cartouche minimale (cardinalité minimale), il existe plusieurs façons. L'un d'entre eux est démontré ci-dessous. Connexion avec la cartouche minimale spécifiée








Essences faibles entités faibles (entité faible) - entités qui peuvent exister dans la base de données uniquement si l'essence d'un autre type est présent. L'essence qui n'est pas faible s'appelle une forte essence (entité forte). Identification et entités dépendantes (entités dépendantes de l'ID) sont de telles essences dont les identifiants contiennent un identifiant d'une autre entité.















27




Diagrammes "Entity-communication" dans le style UML de la conception OOP saisie par les classes de langue UML de toutes les entités qui doivent être stockées dans la base de données sont marquées par le stéréotype "persistant" (durable) UML vous permet d'attribuer des attributs de l'entité UML Les classes utilisent la notation orientée objet pour désigner des attributs et des méthodes "+" - ouverte "#" - protégé "-" - fermé


Diagrammes "Entity-communication" dans le style UML Open (Public) est appelé un tel attribut pouvant être lu et modifier par n'importe quel procédé de n'importe quel objet. Le terme protégé (protégé) signifie que l'attribut ou la méthode n'est disponible que pour les méthodes de cette classe et de ses sous-classes. Et le terme fermé (privé) indique que l'attribut ou la méthode correspondant n'est disponible que pour cette méthode de classe. UML est défini des limitations et des méthodes.