Hierarchie als Baumstruktur ins Datenbankschema abbilden
Das Mapping erlaubt Ihnen, zu einer Hierarchie den notwendigen Datenbank-View im Datenbankmodell für SQL-Server zu erzeugen.
Allgemein
Das Mapping ist auf Basis des M2M SDK erstellt und bietet daher alle Möglichkeiten des M2M SDK bezüglich der Anpassung und Erweiterung.
Was wird abgebildet?
- Die Auswahl durch den Benutzer soll übernommen werden.
- Bei Selektion eines Modells soll das Modell abgebildet werden.
- Bei Selektion eines Pakets soll das Paket abgebildet werden.
- Bei Selektion einer Hierarchie soll die Hierarchie abgebildet werden.
- Abhängige Elemente sollen übernommen werden.
- Die Hierarchieebenen der Hierarchie werden abgebildet.
- Die Entität oder Sicht der Hierarchieebene wird abgebildet.
- Die verwendeten Entitäten und Sichten einer Sicht werden abgebildet.
- Die Attribute der Entität werden abgebildet.
- Die Sichtattribute der Sicht werden abgebildet.
- Der verwendete semantische Datentyp oder die verwendete Sequenz oder die verwendete Datentypdefinition eines Attributs wird abgebildet, das gilt auch für den abgeleiteten Typ eines Fremdschlüsselattributs.
- Der Fremdschlüsseltyp einer Sequenz wird abgebildet.
- Der Fremdschlüssel, der in einer abgebildeten Entität auf eine abgebildete Entität oder Sicht zeigt, wird abgebildet. Die Primärentitäten, Fremdentitäten und Fremdsichten muss der Benutzer explizit auswählen, um sie abzubilden.
- Es wird immer der komplette transitive Inhalt eines Modellelements mit abgebildet.
- Die transitiven Besitzer aller abgebildeten Modellelemente werden auch abgebildet. Ausnahme: Sequenzen und semantische Datentypen
Was wird im DB erzeugt?
- Wenn ein Modellelement im DB bereits verbunden ist, wird nichts erzeugt, sondern dieses Modellelement eventuell geändert.
- Je ein Paket aus ER soll in ein Paket in DB abgebildet werden. Der Besitzer des neu anzulegenden Pakets in DB ist das Modell.
- Aus einer Hierarchie wird ein DB-View angelegt. Der DB-View ist ein UNION ALL-View auf jeweils einen DB-View pro Hierarchieebene. Diese zeigen jeweils auf die Tabelle oder den DB-View, der von der Entität oder Sicht abgebildet wurde, die in der Hierarchieebene verwendet wird. Der DB-View erhält als Namen den Namen des untersten DB-Views der untersten Hierarchieebene mit dem Postfix "_pc". Der DB-View erhält eine View-Spalte für den Abstand zur Baumwurzel und eine View-Spalte, ob es ein Blattknoten ist.
- Aus Entitäten, Attributen und Schlüsseln werden Tabellen, Spalten und Schlüssel erzeugt.
- Aus einem Fremdschlüssel wird ein Fremdschlüssel erzeugt.
- Das Diagramm wird gemäß Name und Besitzer angelegt. Eventuell vorhandene Anlegevoreinstellungen werden berücksichtigt. Das Anlegen erfolgt nur, wenn dort nicht bereits ein Diagramm mit demselben Namen liegt und wenn die Option de.mid.data.CreateDiagram=true gesetzt ist, was Standard ist. Der Diagramminhalt (enthaltene Knoten, Kanten, Sichtbarkeit der Abschnittsinhalte und Größe und Position der Knoten) wird nicht aktualisiert, wenn die Option de.mid.data.MaintainDiagram=false gesetzt wird, was Standard ist. Um ein Diagramm also beim Mapping zu aktualisieren, löschen Sie es oder setzen Sie die Option de.mid.data.MaintainDiagram=true.
- Aus einer Sequenz wird eine Sequenz erzeugt. Die Sequenz wird gemäß Anlegevoreinstellung angelegt.