Verwaltet Data Definitions, Schemaabgleich und DB-DD-Synchronisation.
DBX DD SYSTEMCLASS (dbxDD)
Zweck
dbxDD ist die technische Infrastruktur für DD-Verwaltung, DD-Datei-Erzeugung, Schema-Lesen, Schema-Vergleich, Backup/Restore sowie DB <-> DD Synchronisationsprozesse.
Wichtige Architekturregel
- dbxDD komponiert die zentrale dbxDB-Instanz.
- Verbindungen und DD-Cache werden dadurch nicht doppelt aufgebaut.
- dbxDD stellt nur die benötigte Infrastruktur bereit.
- Die eigentliche Prozesssteuerung, Benutzerentscheidungen, Feld-Zuordnungen und Konfliktauflösungen sollen später über eine Admin-Verwaltung und/oder externe Mapping-Dateien erfolgen.
Mapping-Grundsatz
- Es wird immer zuerst ein Auto-Mapping versucht.
- Benutzer-/Admin-Mapping oder externe Mapping-Dateien müssen dieses Auto-Mapping gezielt übersteuern können.
- Das DD ist das fachliche Soll-Modell und hat Vorrang.
Typ-Grundsatz
- DD-Feldtypen sollen kanonisch und DB-unabhängig sein.
- Als kanonische Basis werden MySQL-nahe DD-Typen verwendet (int, char, varchar, text, date, datetime, ...)
- SQLite/db3-Roh-Typen wie TEXT, INTEGER usw. sollen nicht ungefiltert ins DD übernommen werden.
- Die konkrete Umsetzung auf die jeweilige Ziel-DB übernimmt dbxDB.
Beispiel
$oDD =
dbx()->get_system_obj(
'dbxDD');
$oDD->create_dd('crm', 'kunden', 'crm|kunden.db3', 'kunden');
$plan = $oDD->sync_dd_to_db('crm', 'kunden', 'check');
$res = $oDD->sync_db_to_dd('crm', 'kunden', 'merge');
Verwaltet Datenbankschemata und Schemaabgleiche in der Administration.