Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Die Datenbankadministratorsprache DAL

&pagelevel(3)&pagelevel

Bei einer Session mit dem independent DBH können Sie mit den Kommandos der Datenbankadministratorsprache DAL (Database Administrator Language) dem independent DBH Anweisungen geben und steuernd in den Ablauf der Session eingreifen.

DAL-Syntax

Die Namen der DAL-Kommandos und ihrer Operanden dürfen Sie abkürzen. Es gelten folgende Abkürzungsregeln:

  • Es genügt, die ersten drei Zeichen des Namens anzugeben; dies gilt allerdings nicht für %BIB, %DML, %TERM.

  • Werden mehr als drei Zeichen angegeben, so müssen Sie auch bei diesen nachfolgenden Zeichen die korrekte Syntax angeben.

  • Bei Angabe von mehr als drei Zeichen kann die Eingabe des DAL-Kommandos auch so abgekürzt werden, dass sie mit einem im DAL-Kommando enthaltenen Bindestrich endet. Bei Eingabe über UDSADM ist hierbei aber zu beachten, dass UDSADM einen abschließenden Bindestrich als Fortsetzungszeichen interpretiert.

  • Namen, die kürzer als drei Zeichen sind, müssen vollständig angegeben werden.

Bei den UDS-D-spezifischen DAL-Kommandos genügen die ersten drei Zeichen nach „&“.


Die Gesamtlänge der DAL-Kommandos darf max. 64 Zeichen betragen. Das kann bei DAL-Kommandos, in denen Datenbankname und Realm-Name angegeben werden müssen, zu Problemen führen.
Diese Probleme lassen sich vermeiden, wenn die Realm-Namen konfigurationsweit eindeutig gehalten werden (dann ist die Angabe des Datenbanknamens überflüssig), oder wenn die Datenbanknamen und Realm-Namen nicht zu lang gewählt werden (siehe Handbuch „Entwerfen und Definieren“, Nachschlageteil).

Eine Hilfe für die Korrektur möglicher Fehler wegen zu langer DAL-Kommandos gibt UDS/SQL mit der Meldung UDS0220.
Beim Empfang eines DAL-Kommandos wird von UDS/SQL folgende Meldung ausgegeben:

% UDS0220 UDS HAT FOLGENDES KOMMANDO ENTGEGENGENOMMEN

Diese Meldung enthält als Insert (&01) das DAL-Kommando, das UDS/SQL entgegengenommen hat. Aus diesem Insert ist ersichtlich, was bei UDS/SQL tatsächlich angekommen ist. Insbesondere ist erkennbar, ob Teile des Kommandos, das Sie eingegeben haben, abgeschnitten wurden.

Das Ende der Kommandobearbeitung wird bei fehlerfreien DAL-Kommandos mit folgender Meldung angezeigt:

% UDS0218 UDS HAT DIE BEARBEITUNG DES DAL KOMMANDOS ABGESCHLOSSEN 

bzw. bei UDS-D DAL-Kommandos

% UDS0832 UDS-D: KOMMANDO AUSGEFUEHRT

Bei Fehlern in DAL-Kommandos erhalten Sie die Meldung

% UDS0209 UDS-ANWENDERFEHLER: DAS KOMMANDO WIRD ABGEWIESEN

Diese kann mehrfach mit unterschiedlich detaillierten Angaben zur Ursache erscheinen.

Bei einigen DAL-Kommandos muss transaktionskennung angegeben werden:

transaktionskennung:

bis zu achtstellige Dezimalzahl, die der DBH zur Kennzeichnung einer Transaktion vergibt; sie kann mit dem DISPLAY-Kommando erfragt werden.

Ausführung der Kommandos

Bei den meisten DAL-Kommandos wird die gewünschte Funktion sofort ausgeführt oder zumindest angestoßen. Bei den folgenden DAL-Kommandos wird die gewünschte Funktion nur vorgemerkt:

ACT INCR
ACT DBTT-INCR
ADD DB
ADD RN
DEACT INCR
DEACT DBTT-INCR
DROP DB
DROP RN
NEW PUBSETS
NEW RLOG
CHECKPOINT
ACCESS DB (wenn eine Kombination mit ADD DB vorliegt)

Die vorgemerkten Aufträge werden erst ausgeführt, wenn das Kommando PERFORM gegeben wird. Durch dieses Verfahren haben Sie die Möglichkeit, während der laufenden Session mehrere Aufträge zu sammeln. Nach dem PERFORM kann der DBH die Aufträge auf einmal bearbeiten und braucht interne Sperren nur einmal zu setzen.

Sie dürfen die Aufträge in beliebiger Reihenfolge eingeben. Der DBH arbeitet die Aufträge aber in bestimmter Reihenfolge ab. Die Reihenfolge richtet sich danach, ob

  • die Aufträge sich auf Datenbanken beziehen, die zum Zeitpunkt, wenn das Kommando PERFORM gegeben wird, der aktuellen Konfiguration angeschlossen sind

  • die Aufträge sich auf Datenbanken beziehen, die zum Zeitpunkt, wenn das Kommando PERFORM gegeben wird, der aktuellen Konfiguration nicht angeschlossen sind.

Bei Datenbanken, die angeschlossen sind, wird z.B. ADD RN vor DROP DB ausgeführt. Das bedeutet, dass ausgefallene Realms, falls sie repariert wurden, zuerst verfügbar gemacht werden und erst dann die gesamte Datenbank ausgeschlossen wird.

In welcher Reihenfolge diese Aufträge abgearbeitet werden, können Sie der folgenden Tabelle entnehmen.

Der Auftrag bezieht sich auf Datenbanken, die
angeschlossen sind.

Der Auftrag bezieht sich auf Datenbanken, die
nicht angeschlossen sind.

ACT INCR
DEACT INCR
ACT DBTT-INCR
DEACT DBTT-INCR
ADD RN=
DROP RN=
CHECKPOINT [DB=]
DROP DB=

ADD DB=
CHECKPOINT DB=
ACCESS DB=

Tabelle 13: Reihenfolge der Abarbeitung von Aufträgen nach PERFORM

Folgende DAL-Kommandos kennt der independent DBH:

Die DAL-Kommandos für UDS-D beginnen mit dem Sonderzeichen &. Sie werden nur ausgewertet, wenn der UDS-D-Betrieb gestartet ist.
Sie sind in die alphabetische Reihenfolge der übrigen DAL-Kommandos eingeordnet.

DAL-Kommando                                                                                                    

Bedeutung

ABORT {transaktionskennung[,OPTION=PTC] |
       ALL}

Angegebene offene Transaktionen zurücksetzen
OPTION=PTC:
ohne Rücksicht auf konfigurationsübergreifende Konsistenz bzw. UDS/SQL-openUTM-Konsistenz

ACCESS {LOCK | RETRIEVAL | UPDATE},
       {DB=dbname |
        RN=realmname[,DB=dbname]}

Zugriffssperren auf Datenbank- und Realm-Ebene behandeln

ACT {DBTT-INCR,DB=dbname[, RECR=recordref]
          [, EXT=extnr][, SCAN={YES | NO} |
     INCR,DB=dbname[, RR=realmref]
          [, EXT=(nr-pages,min-pages)]}

Online-Erweiterbarkeit von DBTTs bzw. Realms aktivieren

ADD {DB=[$userid.]dbname[.copyname]
        [,OPTION=[SHARED-RETRIEVAL]
        [,OWN-BUFFER-SIZE=n][,ID=bufferid] |

     RN=realmname[,DB=dbname]
     PW=kennwort

     ADM=admkennwort }

Datenbanken, Realms und Kennwörter anschließen

&ADD DISTRIBUTION,
   {NODE=prozessorname,
         CONF=konfname[,DB=dbname] |

    DB=dbname,SS=subschemaname |

    FILE=dateiname }

Neue Einträge in die Verteiltabelle bringen

%BIB

Anzahl der Nachrichten an den UDS/SQL-DBH ausgeben, die UDSCON weitergeleitet hat.
Gezählt werden nicht nur die DML-Anweisungen, die von der COBOL-DML, CALL-DML, SQL oder KDBS kommen, sondern auch die Nachrichten der Laufzeit-Systeme und von UDSCON.

&CHANGE DISTRIBUTION,
  NODE=prozessorname,

  CONF=konfname

Eine Konfiguration einem anderen Verarbeitungsrechner zuordnen

CHECKPOINT[ DB=dbname[,OPTION=EVEN-WITHOUT-
ALOG]]

Konsistenzpunkte festschreiben im AFIM-Logging für einzelne Datenbanken der Konfiguration oder die gesamte Konfiguration

CLOSE {RUN-UNITS | CALLS | ADMINISTRATION}

Laufende Session normal beenden bzw. DCAM-Administration beenden

&CLOSE DISTRIBUTION

UDS-D-Betrieb beenden

COMMIT transaktionskennung

Transaktion im Zustand PTC beenden mit Festschreiben der Änderungen (FINISH) ohne Rücksicht auf konfigurationsübergreifende Konsistenz bzw. UDS/SQL-openUTM-Konsistenz

CONTINUE

In der Ausgabe des DISPLAY SQL-DAL-Kommandos „blättern“

DEACT {DBTT-INCR,DB=dbname[, RECR=recordref]|
       INCR,DB=dbname[, RR=realmref] }

Online-Erweiterbarkeit von DBTTs bzw. Realms deaktivieren

DISPLAY {DB[,RUNID=transaktionskennung] |
         USERS[,DB=dbname] |

         SUBSCH[,DB=dbname]
               [,LINES={n | ALL}] |
         MAINREF[,STATE=BLOCK] |

         transaktionskennung
|
         REALMS[,DB=dbname][,RN=realmname]
               [,LINES={n | ALL}] |

         PP |
         FPA [,DB=dbname][,RN=realmname]
             [,LINES={n | ALL}] |

         INCR [,DB=dbname][,RN=realmname]
              [,LINES={n | ALL}] |
         DBTT-INCR [,DB=dbname

                     [, RECR=recordref]]
                     [,LINES={n | ALL}] |
         PUBSETS |

         ALOG [,DB=dbname] }

Datenbanken, Transaktionen, Subschemata, Mainrefs, noch verfügbaren Freiplatz oder Programmparameter der Konfiguration auflisten, bzw. Informationen über die Online-Erweiterbarkeit von Realms oder DBTTs ausgeben oder UDS/SQL-Pubset-Deklaration ausgeben

&DISPLAY DISTRIBUTION
  [,NODE=prozessorname]

  [,CONF=konfname]
  [,DB=dbname]
  [,SS=subschemaname]

Verteiltabelle ausgeben

DISPLAY SQL{,VG=vg-nr |
            ,OPTION=ALL[,VG=vg-nr] |
            ,OPTION=IDLE[,TIME=z]}

Detaillierte Informationen über einen oder mehrere SQL-Vorgänge ausgeben

%DML

Anzahl der Nachrichten an den UDS/SQL-DBH ausgeben, die UDSCON weitergeleitet hat.
Gezählt werden nicht nur die DML-Anweisungen, die von der COBOL-DML, CALL-DML, SQL oder KDBS kommen, sondern auch die Nachrichten der Laufzeit-Systeme und von UDSCON.

DROP {DB=dbname
      RN=realmname[,DB=dbname] |
      PW=kennwort |
      ADM=admkennwort}

Datenbanken, Realms und Kennwörter ausschließen

&DROP DISTRIBUTION,
    {ALL |
     NODE=prozessorname,
        CONF=konfname[,DB=dbname][,ALL] |

     DB=dbname,SS=subschemaname }

Einträge in der Verteiltabelle löschen

DUMP [{ALL | STD | transaktionskennung}]

Speicherabzug vom DBH erstellen

EXTEND DBTT,DB=dbname, RECR=recordref
  [,EXT=extnmbr]

Online-DBTT-Erweiterung ausführen

EXTEND REALM,DB=dbname,RR=realmref,
  EXT=nr-pages

Online-Realm-Erweiterung ausführen

FORGET SQL,VG=vg-nr

Betriebsmittel freigeben, die zu dem SQL-Vorgang mit der Nummer vg-nr gehören

GO {transaktionskennung | ALL | OLD}

Ausführung der angegebenen Transaktion(en) fortsetzen

&LOCK DISTRIBUTION,
   {NODE=prozessorname |
    CONF=konfname |
    DB=dbname |

    SS=subschemaname }

Einträge der Verteiltabelle sperren

MODIFY {ALOG | ALOG-RES},
   DB=dbname[,VALUE={:catid: | PUBLIC}]

            [,SHARE={YES | NO}]

Einstellungen für DEFAULT-SUPPORT und RESERVE-SUPPORT der ALOG-Dateien ändern

MODIFY ALOG-SIZE,
  DB=dbname,VALUE=([primär][,[sekundär]])

Speicherplatzzuweisung für die ALOG-Dateien ändern

MODIFY {LOG | LOG-2},
       VALUE={:catid: |
              PUBLIC |

              (priv-vsn-1/gerät-1
               [,priv-vsn-2 gerät-2
               [,priv-vsn-3 gerät-3]]) |

              (vsn-1[,vsn-2[,vsn-3]])}

Datenträgerzuweisung für eine neu einzurichtende Original- und Duplikat-RLOG-Datei ändern

MODIFY LOG-SIZE,VALUE=([primär]
                       [,[sekundär]])

Speicherplatzgröße der RLOG-Dateien ändern

MODIFY PTCSYNCH,
   VALUE=([{WAIT | ABORT | COMMIT}]
          [,[{WAIT | ABORT | COMMIT}]])

Wert des DBH-Ladeparameters PTCSYNCH ändern

MODIFY RESERVE,
       VALUE={NONE |
              :catid: |
              PUBLIC |

              (priv-vsn-1/gerät-1
               [,priv-vsn-2 gerät-2
               [,priv-vsn-3 gerät-3]]) |

              (vsn-1[,vsn-2[,vsn-3]])}

Ersatzdatenträger für RLOG-Dateien ändern

NEW PUBSETS

Neue UDS/SQL-Pubset-Deklaration prüfen und vormerken

NEW RLOG

Neue RLOG-Dateien auswählen

PERFORM {NOCANCEL | CANCEL}

Aufträge anstoßen aus den Kommandos: DROP, ADD, NEW bzw. CHECKPOINT
Standardwert: NOCANCEL

&PWD DISTRIBUTION,CONF=konfname,
   {PWN=kennwortneu |
    PWO=kennwortalt|
    PWO=kennwortalt,PWN=kennwortneu}

Kennwort vergeben und verändern

REACT INCR,DB=dbname[, RR=realmref]

Online-Realm-Erweiterbarkeit reaktivieren

RESET ORDERS

Vorgemerkte Aufträge zurücknehmen

&SAVE DISTRIBUTION,FILE=
      [:catid:][$userid.]dateiname

Verteiltabelle sichern

&START DISTRIBUTION

UDS-D-Betrieb starten

STOP {transaktionskennung | NEW | ALL}

Ausführung der angegebenen Transaktion(en) stoppen

&SYNCHRONIZE DISTRIBUTION

Sekundäre Teiltransaktionen im Zustand PTC beenden

%TERM

Session auf dem kürzesten Weg abbrechen (Nothalt) und wahlweise einen kompletten Speicherabzug des DBH ausgeben

VORSICHT!

%TERM sollten Sie nur dann verwenden, wenn die Mastertask wegen eines Fehlers keine anderen DAL-Kommandos mehr akzeptiert.

&UNLOCK DISTRIBUTION,
   {NODE=prozessorname |
    CONF=konfname |
    DB=dbname |

    SS=subschemaname }

Sperren für Einträge in der Verteiltabelle aufheben

Tabelle 14: DAL-Kommandos für den independent DBH

Folgende DAL-Kommandos kennt der linked-in DBH:

DAL-Kommando                                                             

Bedeutung

%BIB

Anzahl der abgearbeiteten Base Interface Blocks ausgeben, die in diesem Session-Abschnitt bearbeitet wurden

%DUMP

Kompletten Speicherabzug des DBH mit aufbereiteten Tabellen auf Datei ausgeben. Das Programm wird nicht abgebrochen.

Tabelle 15: DAL-Kommandos für den linked-in DBH

Im Folgenden sind alle DAL-Kommandos ausführlich beschrieben.