Datenbank Interne Tabellen - HerbertV/DSAGenesis GitHub Wiki

Diese Tabellen bilden keine DSA relevanten Inhalte ab sondern diehnen nur zur Verwaltung.

Tabelle: CoreDataVersion

Spalten:

"ID" INTEGER PRIMARY KEY NOT NULL,
"ver_major" INTEGER NOT NULL,
"ver_minor" INTEGER NOT NULL,
"ver_language" VARCHAR (5)

Wird zum identifizieren der Datanbank verwendet. In allen Meta XMLs und Hero XMLs wird die Version hinterlegt um festzustellen ob es evtl. Versionskonflikte geben könnte.

Diese Tabelle hat immer nur einen Eintrag mit der ID 0.

Tabelle: CoreDataTableIndex

Spalten:

"ID" INTEGER  PRIMARY KEY AUTOINCREMENT NULL,
"ti_table_name" VARCHAR(50)  NOT NULL,
"ti_uses_prefix" BOOLEAN DEFAULT 'true' NOT NULL,
"ti_prefix" VARCHAR(4),
"ti_last_index_num" INTEGER DEFAULT -1 NOT NULL,
"ti_label" TEXT  NOT NULL,
"ti_note" TEXT  NULL,
"ti_tab_index" INTEGER DEFAULT '0' NOT NULL,
"ti_editable" BOOLEAN DEFAULT 'true' NOT NULL

Wird zum Verwalten der IDs für alle anderen Tabellen verwendet. In DSA Genesis sind die IDs nicht nur nummern sondern jede ID hat auch einen einzigartigen Prefix. Alternativ zur Nummer kann dies auch ein String sein (siehe Characteristics Tabelle). Der Prefix endet immer mit einem _ (underline).

Format für die ID:
[prefix_][nummer] oder [prefix_][idstring]

Damit hat jeder Datensatz eine Datenbankweite einzigartige ID und kann über die ID einer Tabelle zugeordnet werden. Dieses System wird benötigt um mit dem Formel Editor generierte Formel auflösen zu können.

Es gibt einige wenige Ausnahmen in der Tabellen die klassische Integer ID verwenden, wie z.B. in der SKT Tabelle.

Tabelle: TableColumnLabels

Spalten:

"ID" INTEGER  PRIMARY KEY AUTOINCREMENT NOT NULL,
"tcl_table_name" VARCHAR(50)  NOT NULL,
"tcl_column_name" VARCHAR(50)  NOT NULL,
"tcl_label" TEXT  NOT NULL

Diese Tabelle enthält die Beschriftungen für die Spalten die im Core Editor angezeigt werden.