>> Inhaltsverzeichnis >> Artikel

Element Table

  ELEMENT table (description?, (grant* | primarykey | foreign* | trigger* |
                 constraint* | declaration | index)*)
  ATTRIBUTE
       name        string
       title       string
       readonly    bool
       inherits    string
  
Attribute
Attribut Typ Pflicht Default Beschreibung
name string yes n/a Ein eindeutiger Name, welcher die Tabelle identifiziert. Sollte kleingeschrieben und ein valider XML-, SQL-Bezeichner sein.
title string - n/a Title ist eine Beschriftung, welche in der Nutzeroberfläche angezeigt werden sollte wenn das Objekt anzeigt wird.
Beachten sie, dass der Text ein Platzhalter sein darf, welcher für die angezeigte Sprache übersetzt wird.
readonly bool - no Sie können die Tabelle auf schreibgeschützt setzen, um zu verhindern dass Änderungen vorgenommen werden.
inherits string - n/a Name der Elterntabelle.
Beschreibung

Ein Tabelle ist eine Reihe von Spaltendefinitionen und Eigenschaften, welche alle Spalten der Tabelle gemeinsam haben, z. Bsp.: Trigger und Indexes.

Implementierung von Vererbung

Vererbung hat für Tabellen folgende Bedeutung: eine Kindtabelle AB erweitert die Struktur und Daten einer Elterntabelle A um die Elemente B. Alle Zeilen in AB besitzen sämtliche Spalten definiert in A + sämtliche Spalten aus B. B bleibt dabei unverändert. Wenn sich die Struktur von A ändert, ändert sich die Struktur von AB ebenso. Jedes Element von AB kann auch als ein Element von A interpretiert werden, aber nicht umgekehrt.
Technisch gesprochen: der Primärschlüssel der Kindtabelle ist ein Fremdschlüssel, der auf den Primärschlüssel der Elterntabelle verweist.
Dies ist ein Unterschied zu PostgreSQL, welches multiple Vererbung mit n Elterntabellen unterstützt - verbunden mit allen Konsequenzen und Problemen, welche dieses Verhalten verursacht.

Autor: Thomas Meyer, www.yanaframework.net