Lade...
 

Schema-Datenbanken

Schema Datenbanken

Die ObjectStore® Datenbank hält die Information über das Layout der Klassen (der in der Datenbank gespeicherten Objekte) in Schema Datenbanken.
Im ClassiX®-System sind die Schema-Datenbanken den DLLs zugeordnet, in denen der C++-Code für die entsprechenden Klassen zu finden ist:

DLL enthält Programmcode für Schema-Datenbank
cxbosr.dll Basis-Klassen schema_b.adb
cxoosr.dll Klassen für COM-/OLE-Objekte schema_o.adb
cxmosr.dll CyberEnterprise® schema_m.adb

Der Zugriff zu den Schema-Datenbanken läuft, genau so wie bei den "normalen" Datenbanken, über den ObjectStore® Server; im Gegensatz zu den DLLs müssen sie also dort liegen, wo auch ein Server läuft.

Wie werden die Schema-Datenbanken beim Start des ClassiX® Systems gefunden?

Eine Besonderheit von ObjectStore® besteht darin, dass auch in den DLLs ein Pfad zur zugehörigen Schema-Datenbank gespeichert wird. Dieser Pfad kann mit einem zu  ObjectStore® gehörenden Utility ossetasp verändert werden.

In der Startphase sucht ObjectStore® die Schemata in dieser Reihenfolge:

  1. nach dem in den DLLs implantierten Pfad: dies ist bei ClassiX® einfach der Name der Schema Datenbank. Somit wird im aktuellen Directory gesucht.
  2. in dem Directory (bzw. den Directories), die mit der Umgebungsvariable OS_SCHEMA_PATH angegeben wurden
  3. in allen Directories, aus denen DLLs geladen werden können, d.h. entsprechend der Umgebungsvariablen PATH

Bei der Installation eines ClassiX® Systems soll die Umgebungsvariable OS_SCHEMA_PATH genutzt werden, um die erforderliche Flexibilität zu bewahren. 
Das Implantieren eines Schema-Pfades in den DLLs wird nicht empfohlen.

Werden Schema-Datenbanken in einem Verzeichnis gefunden, welches auf einem Rechner ohne ObjectStore-Server liegt, kann dies zu spürbaren Verzögerungen beim Starten von ClassiX führen.

Was ist zu tun, wenn die richtigen Schemata nicht gefunden werden?:

  • Umgebungsvariable OS_SCHEMA_PATH überprüfen
  • Überprüfen, ob über die anderen Wege (1. und 3.) falsche (= veraltete) Schema-Datenbanken gefunden werden können.
  • Wenn keine Schema-Datenbanken gefunden werden wird in einer Fehlermeldung angezeigt, wo alles gesucht wird. Prüfen Sie, woher diese Pfade kommen und passen Sie ggf. PATH oder OS_SCHEMA_PATH an.