Der DBH und die Dienstprogramme DDL-Compiler, SSL-Compiler, BGSIA, BGSSIA, BPRIVACY, BMEND, BREORG, BCHANGE, BRENAME und BALTER versorgen eine Datenbank-Jobvariable zur Verbesserung der automatischen Administration. Diese Jobvariable können Sie nutzen, um Benutzeraufträge und Programme zu steuern.
Der Name der Datenbank-Jobvariablen setzt sich wie folgt zusammen:
UDSSQL.DB.datenbankname[.copyname][.nr]
datenbankname
ist der Name der Datenbank (max. 17 Zeichen)
copyname
ist der Copyname einer im Modus SHARED-RETRIEVAL im DBH zugeschalteten Datenbank
nr
ist die einstellige Nummer (1..9) der Datenbank bei Datenbanken, die in verschiedenen
Sessions parallel im Modus SHARED-RETRIEVAL genutzt werden.
Dienstprogramme nutzen nur eine Jobvariable ohne nr.
Die Datenbank-Jobvariable liegt immer in der Kennung und im Pubset des DBDIR der entsprechenden Datenbank.
Wenn eine Datenbank-Jobvariable zum Zeitpunkt der Initialisierung nicht existiert, wird sie mit den folgenden Eigenschaften angelegt:
ACCESS=*WRITE USER-ACCESS=*ALL-USERS BASIC-ACL=*NONE (einfache Zugriffskontrollliste)
Wenn die Jobvariable mit anderen Eigenschaften genutzt werden soll, müssen Sie sie vor dem DBH-Start bzw. vor dem Dienstprogrammlauf mit den gewünschten Eigenschaften anlegen. Die Zugriffskontrolle bei der Nutzung der Jobvariablen ist mit Standardmitteln (z.B. Basic-ACL, Guards) realisierbar.
Vor der Verwendung einer Jobvariablen in einer Fremdkennung müssen Sie diese entweder selbst anlegen oder durch geeignete Massnahmen (z.B. Miteigentümerschaft in einer fremden Kennung) dafür sorgen, dass sie dynamisch angelegt werden kann.
Bitte beachten Sie auch die „Hinweise zur Verwendung der Jobvariablen“.
Besonderheiten bei Datenbanken im Modus SHARED-RETRIEVAL
Beim Öffnen einer Datenbank im Modus SHARED-RETRIEVAL prüft der DBH zunächst, ob bereits passende Jobvariablen mit Nummerierung existieren. Wenn eine dieser Jobvariablen den aktuellen Name der Konfiguration enthält, wird sie verwendet. Andernfalls wählt der DBH einen noch nicht genutzten Jobvariablennamen aus, legt die entsprechende Jobvariable an und trägt den aktuellen Konfigurationsnamen ein. Leere oder noch nicht mit Konfigurationsnamen versorgte Jobvariablen werden nicht genutzt, weil bei paralleler Nutzung der Datenbanken in mehreren DBH Sessions sichergestellt werden muss, dass durch jede DBH Session eine andere Datenbank-Jobvariable genutzt wird. Eine entsprechende Jobvariable ohne Nummer wird in dieses Verfahren einbezogen und bei der freien Auswahl bevorzugt belegt.
Datenbank-Jobvariablen im SHARED-RETRIEVAL Einsatz werden beim Zuschalten der Datenbank immer vollständig initialisiert.
Es wird empfohlen, bei echt parallelem SHARED-RETRIEVAL-Einsatz die Datenbank-Jobvariablen vor der Nutzung einzurichten und den Konfigurationsnamen der DBH-Session (Spalte 61-68) zu versorgen.
Besondere Regeln bei der Nummerierung der Jobvariablen sind nicht zu beachten. Falls schon alle der 10 möglichen Jobvariablen genutzt werden und damit anderen Konfigurationen zugeordnet sind, kann keine Jobvariable für die betroffene Datenbank angelegt werden. Es wird eine entsprechende Fehlermeldung durch den DBH ausgegeben.
Struktur der Datenbank-Jobvariable
Die Datenbank-Jobvariable UDSSQL.DB.datenbankname.[.copyname][.nr] wird folgendermaßen versorgt:
Spalte | Inhalt | Bedeutung |
1-2 | 01 | Versionskennzeichen des Layouts der Session-Jobvariablen |
3-19 | ccccccccccccccccc | Name der Datenbank (1) |
20-26 | cccccc / 'BLANK' | Copyname (2) |
27-32 | cccccc | DB-Layout-Version |
33 | C / I / 'BLANK' | Konsistenz (3) |
34-40 | 'BLANK' | reserviert |
41-50 | UPDATE / RETR/ WARMSTART/ OPEN / DROP / CLOSE / ERROR | Verarbeitungszustand (4):
|
51 | 'BLANK' / A | Aktivierung ALOG (5) |
52 | 'BLANK' / O | Kennzeichen für Online-Kopierfähigkeit (6) |
53-60 |
LKIN-DBH / UTIL-DBH / utility | DBH oder Dienstprogramm (7)
|
61-68 | cccccccc / 'BLANK' | Konfigurationsname der DBH-Session (8) |
69-72 | cccc / 'BLANK' | Standardkatalog der DBH Kennung (9) |
73-81 | $cccccccc / 'BLANK' | Kennung der DBH-Session (mit $) (9) |
82-89 | nnnnnnnn / 'BLANK' | Sessionabschnittsnummer (10) |
| | Verarbeitungsbeginn (11) |
| | Verarbeitungsende (12) |
| | letzter ALOG-Wechsel (13) |
144-152 | nnnnnnnnn / 'BLANK' | ALOG-Folgenummer (14) |
153-162 | nnnnnnnnnn / 'BLANK' | Größe der ALOG-Datei (15) |
163-182 | 'BLANK' | reserviert |
| | Letzte Änderung in Jobvariable |
Tabelle 25: Aufbau der Datenbank-Jobvariable für UDS/SQL
Anmerkungen
(1) | Datenbankname ist der auch im Jobvariablen-Namen enthaltene Name der Datenbank. |
(2) | Copyname wird nur bei Schattendatenbank versorgt. |
(3) | Konsistenz wird nur vom DBH versorgt und zeigt an, ob die Datenbank konsistent ("C") oder inkonsistent ("I") ist. In diesem Sinne ist eine Datenbank dann inkonsistent, wenn der DBH gerade ändernd auf der Datenbank aktiv ist und evtl. noch nicht alle Änderungen in die Datenbankdateien zurückgeschrieben sind. Die Datenbank kann aber auch inkonsistent sein, wenn eine Bearbeitung durch den DBH abnormal beendet worden ist. Durch einen Warmstart der Datenbank kann diese im Allgemeinen wieder in einen konsistenten Stand überführt werden. |
(4) | Verarbeitungszustand zeigt den Zuschaltmodus bzw. die Ursache der letzten Beendigung an. Temporäre Einschränkungen des Zugriffs (z.B. wegen DAL ACCESS) oder Einschränkungen der Betriebsart (weil z.B. weil die RLOG-Datei nicht genutzt werden kann) werden nicht angezeigt. ERROR wird gesetzt, wenn die Datenbank kontrolliert inkonsistent abgeschaltet oder ihre Bearbeitung wegen sonstiger Fehler beendet wird. Im letzteren Fall ist es durchaus möglich, dass die Datenbank weiterhin konsistent ist. In Einzelfällen ist es jedoch möglich, dass die DBH-Session abnormal beendet wird, ohne dass der Verarbeitungszustand aktualisiert werden kann. Dann ist im Allgemeinen die Datenbank weiterhin inkonsistent und der Verarbeitungszustand bleibt UPDATE. Bei einem anschließenden Warmstart durch den DBH wird der Verarbeitungszustand WARMSTART gesetzt und beim Ende des Warmstarts der für die Bearbeitung gewünschte Zustand (z.B. UPDATE) eingetragen. Ändernde Dienstprogramme versorgen die Zustände OPEN, CLOSE und evtl. ERROR. In manchen Fehlersituationen ist bei den Dienstprogrammen eine kontrollierte Programmbeendigung nicht mehr möglich. In diesem Fall kann auch der Zustand ERROR nicht mehr korrekt gesetzt werden. Die Jobvariable verbleibt dann auch nach Beendigung des Dienstprogramms im Zustand OPEN. Außerdem ist es möglich, dass in der letzten Phase der Beendigung eines Dienstprogrammes noch ein Fehler auftritt, nachdem die Jobvariable bereits mit dem Zustand CLOSE versorgt ist. Dann wird die Jobvariable nach Möglichkeit noch mit dem Zustand ERROR versorgt. |
(5) | Aktivierung ALOG zeigt an, ob für die Datenbank ALOGGING eingeschaltet ist ("A") oder nicht (Leerzeichen). Die aktuelle Verarbeitung im DBH kann ohne ALOGGING erfolgen, wenn z.B. die Datenbank im Modus SHARED-RETRIEVAL zugeschaltet ist. |
(6) | Kennzeichen für Online-Kopierfähigkeit |
(7) | DBH oder Dienstprogramm wird beim Zuschalten der Datenbank durch den DBH bzw. von dem Dienstprogramm versorgt und bleibt dann unverändert. |
(8) | Konfigurationsname der DBH-Session zeigt den aktuellen bzw. den letzten Namen der DBH Konfiguration an. Das Feld wird beim Zuschalten der Datenbank versorgt und bleibt dann unverändert. Dienstprogramme, die nicht den linked-in DBH nutzen, tragen Leerzeichen ein. Im Modus SHARED-RETRIEVAL sollte eine Datenbank-Jobvariable vor dem Zuschalten der Datenbank zu einer DBH Session angelegt und mit dem Konfigurationsnamen versorgt werden. |
(9) | Standardkatalog der DBH Kennung und Kennung der DBH-Session enthalten die Werte der entsprechenden DBH Session. Diese Werte können zum eindeutigen Zugriff auf die Session-Jobvariable genutzt werden. Dienstprogramme, die nicht den Linked-in-DBH nutzen, tragen Leerzeichen ein. |
(10) | Sessionabschnittsnummer wird beim Zuschalten der Datenbank mit dem aktuellen Wert der bearbeitenden Session versorgt und beim Abschalten durch den DBH mit Leerzeichen gelöscht. Dienstprogramme, die nicht den Linked-in-DBH nutzen, tragen bereits beim Zuschalten Leerzeichen ein. |
(11) | Verarbeitungsbeginn wird beim Zuschalten (DBH) bzw. Öffnen (Dienstprogramm) der Datenbank versorgt und bleibt dann unverändert. |
(12) | Verarbeitungsende wird beim Abschalten (DBH) bzw. Schließen (Dienstprogramm) |
(13) | Letzter ALOG-Wechsel zeigt den Zeitpunkt des letzten ALOG-Wechsels bzw. der (Re-)Aktivierung des ALOGGINGs an. Das Datum bleibt auch dann erhalten, wenn das ALOGGING ausgeschaltet wird. |
(14) | ALOG-Sequenz-Number wird von DBH oder Dienstprogrammen beim ALOG-Wechsel versorgt, falls ALOGGING eingeschaltet ist. |
(15) | Größe ALOG-Datei zeigt die Größe des genutzten Teils der ALOG-Datei in PAM-Seiten an. Diese Größe kann geringfügig von der Dateigröße aus DVS-Sicht abweichen. Diese Abweichung kann entweder durch eine Rundung wegen der genutzten Größe der Allokierungseinheit (3, 4 oder 32 PAM-Seiten) entstehen, oder weil durch Verdoppelung der Sekundärzuweisung (vgl. Klasse-2-Systemparameter DMMAXSC bzw. Parameter MAXIMAL-ALLOCATION bei ADD-/MODIFY-MASTER-CATALOG-ENTRY) eine aktuelle Dateierweiterung größer ist als die von UDS/SQL angeforderte Erweiterung. Das Feld wird nur vom DBH mit einem aktuellen Wert versorgt. Dienstprogramme, die nicht den Linked-in-DBH nutzen, tragen Leerzeichen ein. |