Zum Inhalt

Constraints

Unter [Admin]->[Tools]->[Constraints] werden die in Limbas verwendeten Constraints aufgelistet. Dazu gehören:

  • Indizes
  • Foreign Keys
  • Primary Keys
  • Unique Constraints

Indizes

Abb.: Indizes

Das Indizieren führt häufig zu einer Leistungsverbesserung bei der Suche bzw. beim Abruf von Daten.
Angezeigt werden die selbst erstellen Indizes sowie die automatisch angelegten des Systems. Über die Spaltennamen kann die Darstellung der Indizes sortiert werden. Außerdem ist es möglich einzelne Indizes zu löschen oder neu zu erstellen. Die Spalte benutzt zeigt die aktuellen Scans auf diesen Index. Ist sie nach längerer Beobachtung nicht größer als 0 kann der Index gelöscht werden. Nicht genutzte Indizes können die Performance negativ beeinflussen. Man sollte allerdings einen Index nicht vorschnell löschen da er erst dann effektiv genutzt werden kann wenn genügend Daten vorhanden und eine entsprechende Suche erfolgte. Über erneuern wird ein Index neu erzeugt. Das kann je nach Datenbank einen fragmentierten Index stark beschleunigen.

Limbas erstellt automatisch für alle Verknüpfungstabellen einen Index für folgende Felder:

  • ID
  • VERKN_ID
  • SORT

Tabelle_A.ID -> Verkn_Tabelle.ID & Verkn_Tabelle.VERKN_ID -> Tabelle_B.ID Das Feld SORT ist besonders zu beobachten da dieser Index alleine für das Anlegen von Datensätzen in dieser Tabelle eine Leistungsverbesserung bringt. Werden viele Verknüpfungen dieser Tabelle auf einmal angelegt ist der Index sehr vorteilhaft.

Weiterhin legt Limbas bei Installation noch für folgende Tabellenfelder einen Index an:

Tabelle Feld
lmb_gtab_groupdat dat_id
lmb_indize_d ref
lmb_indize_d wid
lmb_indize_d sid
lmb_indize_ds ref
lmb_indize_ds wid
lmb_indize_ds sid
lmb_indize_f fid
lmb_indize_f wid
lmb_indize_f sid
lmb_indize_fs fid
lmb_indize_fs wid
lmb_indize_fs sid
lmb_indize_w wid
lmb_indize_w metaphone
lmb_select_d dat_id
lmb_select_d w_id
lmb_select_w sort
lmb_select_w pool
lmb_select_w wert

Notiz:

Alle Systemindizes können falls nicht mehr vorhanden über die Systemtools erzeugt werden.

Foreign Keys

Abb.: Foreign Keys

Foreign Keys verweisen auf Primary Keys einer anderen Tabelle. Beim Verknüpfen von Datensätzen erstellt Limbas im Hintergrund automatisch eine Verknüpfungstabelle. In dieser werden zwei Foreign Keys erzeugt, falls dies beim Anlegen der Verknüpfung ausgewählt wurde (siehe referentielle Integrität).

Primary Keys

Abb.: Primary Keys

Der Primary Key ist ein Schlüssel, der jeden Datensatz einer Tabelle eindeutig identifiziert. Haben zwei Kunden z.B. den gleichen Namen, kann man sie über den Primary Key noch unterscheiden.

Unique Constraints

Abb.: Unique Constraints

Für 1:n Verknüpfungen wird für das Feld VERKN_ID anstelle eines Indexes ein Unique Constraint (welcher schon ein Index beinhaltet) erzeugt.