Erstellen von Datenbankobjekten

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  UModel und Datenbanken > Modellieren von Datenbanken in UModel >

Erstellen von Datenbankobjekten

Sie können in UModel Datenbankobjekte (wie Tabellen, Spalten, Sekundärschlüssel, usw.) entweder über ein Datenbankdiagramm oder das Fenster "Modell-Struktur" erstellen, bearbeiten oder löschen.

 

Beachten Sie beim Anzeigen oder Erstellen von Datenbankobjekten in UModel die folgenden Grundregeln:

 

Tabellen sind Klassen mit dem Stereotyp «Table».
Spalten sind Klasseneigenschaften.
Primär-, Sekundärschlüssel und eindeutige Schlüssel sind Klassen mit dem Stereotyp «PrimaryKey», «ForeignKey» bzw. «UniqueKey».
Check Constraints sind Klassen mit dem Stereotyp «CheckConstraint».
Indizes sind Klassen mit dem Stereotyp «Index».

 

Eine umfassende Tabelle, in der die Entsprechungen der einzelnen Datenbankobjekte mit UModel-Elementen dargestellt sind, finden Sie unter Datenbank-Entsprechungen .

 

Hinzufügen von Tabellen

Um eine Tabelle zum Modell hinzuzufügen, wählen Sie eine der folgenden Methoden:

 

1.Erstellen Sie ein Datenbankdiagramm oder öffnen Sie ein vorhandenes. Um ein neues Datenbankdiagramm zu erstellen, klicken Sie mit der rechten Maustaste im Fenster Modell-Struktur auf ein Paket und wählen Sie im Kontextmenü den Befehl Neues Diagramm | Datenbankdiagramm.
2.Wählen Sie eine der folgenden Methoden:
a.Klicken Sie mit der rechten Maustaste in das Diagramm und wählen Sie im Kontextmenü den Befehl Neu | Tabelle.
b.Klicken Sie auf die Symbolleisten-Schaltfläche Neue Tabelle um_ic_db_table und klicken Sie anschließend in das Diagramm, um die Tabelle hinzuzufügen.

 

Anmerkung:Sie können überall im Modell eine Tabellenklasse hinzufügen. Es hat sich jedoch bewährt, v.a., wenn Sie vorhaben, Code Engineering zu verwenden, alle Tabellenklassen unter einem Paket, das das Stereotyp «Database» hat,  anzulegen. Ein solches Paket wird jedes Mal, wenn Sie eine vorhandene Datenbank in das Modell importieren, automatisch erstellt, siehe Importieren von SQL-Datenbanken in UModel.

 

Hinzufügen von anderen Datenbankobjekten

Um eine Spalte, einen Index, Sekundärschlüssel, usw. zu einer Tabelle hinzuzufügen, klicken Sie mit der rechten Maustaste im Diagramm auf die Tabelle und wählen Sie den entsprechenden Befehl aus dem Kontextmenü aus, z.B.:

um_db_objects_01

Klicken Sie alternativ dazu in der Symbolleiste des Diagramms auf eine Symbolleisten-Schaltfläche und anschließend in die Zieltabelle.

 

um_db_toolbar

 

Um Spaltenattribute wie "autoincrement", "nullable", "primary key" zu definieren, klicken sie zuerst auf die Spalte und aktivieren Sie im Fenster "Eigenschaften" anschließend das gewünschte Kontrollkästchen (Stereotyp):

um_db_objects_02

Sie können auch die Spalte erstellen und während der Eingabe alle erforderlichen Attribute direkt definieren. Um z.B. eine Primärschlüsselspalte mit dem Namen "id" und dem Typ "int", die automatisch inkrementiert wird, zu erstellen, gehen Sie folgendermaßen vor:

 

1.Wählen Sie im Diagramm eine Tabelle aus und drücken Sie F7.
2.Beginnen Sie mit der Eingabe von <<PK, autoincrement>> id:int. Während Sie den Text eingeben, zeigt UModel automatisch eine Liste an, aus der Sie die gewünschten Werte auswählen können.

 

Hinzufügen von Datenbankbeziehungen

Normalerweise fügt man Beziehungen hinzu, um Sekundärschlüsselabhängigkeiten zwischen Spalten verschiedener Tabellen darzustellen. Angenommen, Sie haben die folgenden Klassen:

 

um_db_objects_03

 

Um eine Sekundärschlüsselbeziehung zwischen der Spalte department_id in der Tabelle "person" und der Spalte id in der Tabelle "department" zu erstellen, gehen Sie folgendermaßen vor:

 

1.Klicken Sie mit der rechten Maustaste auf die Tabelle "employee" und wählen Sie im Kontextmenü den Befehl Neu | Sekundärschlüssel. Daraufhin wird innerhalb der Klasse "employee" eine neue Klasse namens "Sekundärschlüssel1" hinzugefügt.

um_db_objects_04

2.Ändern Sie den ersten Spalteneintrag in der Klasse "Sekundärschlüssel1" so, dass er der Besitzerspalte und -tabelle entspricht (in diesem Beispiel department_id:employee). Ändern Sie anschließend den zweiten Spalteneintrag so, dass er der referenzierten Spalte und Tabelle entspricht (in diesem Beispiel id:department).

um_db_objects_05

3.Klicken Sie auf die Symbolleisten-Schaltfläche Datenbankbeziehungs-Assoziation um_ic_db_RelationshipAssociation und ziehen Sie diese anschließend von der Klasse "Sekundärschlüssel1" auf die Klasse "department".

um_db_objects_06

4.Wählen Sie die Beziehungslinie im Fenster "Eigenschaften" aus und ändern Sie die Eigenschaft A :memberEndKind in memberEnd.

um_db_objects_07

5.Drücken Sie F11, um die Projektsyntax auf Fehler zu überprüfen (nähere Informationen siehe unten).

 

Anmerkung:Falls nötig, können Sie mehrere Spalteneinträge pro "Sekundärschlüssel"-Klasse hinzufügen. Sie können auch mehrere Indizes für dieselbe Tabelle hinzufügen.

 

Überprüfen der Projektsyntax

Es empfiehlt sich, während der Erstellung von oder Änderungen an Datenbankobjekten in UModel regelmäßig die Syntax ihres Projekts auf Designprobleme zu überprüfen (z.B. auf Tabellen, die nicht mindestens eine Spalte haben, fehlende Sekundärschlüsselreferenzen, usw.). So überprüfen Sie die Projektsyntax:

 

Klicken Sie im Menü Projekt auf Projektsyntax überprüfen.
Drücken Sie F11.

 

UModel validiert das Projekt und zeigen alle gefundenen Probleme im Fenster "Meldungen" an, z.B.:

um_db_objects_08

Die beiden Warnungen in der Abbildung oben, bedeuten, dass für die Tabellen "department" und "employee" kein Code generiert wird. Wenn Sie in Ihrem UModel-Projekt keine Code Engineering-Unterstützung benötigen, können Sie solche Warnungen ignorieren. Lesen Sie andernfalls nach unter Konfigurieren des Round-Trip Engineering für Datenbanken.


© 2019 Altova GmbH