IMS DB - Datenmanipulation


Advertisements

Die unterschiedlichen Datenmanipulations methoden verwendung im IMS-DL / I Anrufe sind wie folgt:

  • ISRT Anruf
  • bekommen halten Anrufe
  • REPL Anruf
  • DLET Anruf

Lassen uns Sie erwägen die folgende IMS-Datenbankstruktur zu verstehen die Datenmanipulation Funktion ruft:

IMS DATABASE

ISRT Anruf

Punkte zu beachten:

  • ISRT Anruf wird bekannt als Insert Anruf das verwendet wird zu hinzufügen segment Auftreten zu einer Datenbank .

  • ISRT Anrufe werden zum Laden einer neuen Datenbank verwendet wird.

  • Wir Ausgabe ein ISRT Anruf, wenn ein Segment Beschreibung feld wird mit Daten geladen wird..

  • Ein unqualifizierter oder qualifizierte SSA muss im Aufruf angegeben werden, so dass die DL / I weiß, wo zu statt ein Segment Auftreten .

  • Wir kann verwendung eine Kombination von nicht qualifizierten und qualifizierten SSA in dem Aufruf . Eine qualifizierte SSA können spezifiziert für alle oben dem Niveau . Lassen uns Sie Betrachten wir das folgende Beispiel:

CALL 'CBLTDLI' USING DLI-ISRT
                     PCB-NAME
                     IO-AREA
                     LIBRARY-SSA
                     BOOKS-SSA
                     UNQUALIFIED-ENGINEERING-SSA

Das obige Beispiel zeigt, dass wir die Ausstellung einer ISRT Anruf durch Bereitstellung eine Kombination aus qualifizierten und unqualifizierten SSA.

Wenn ein neues Segment, das wir sind Einfügen hat eine eindeutige Schlüsselfeld, dann ist es bei der richtigen Position hinzugefügt. Wenn das Schlüsselfeld nicht eindeutig ist, wird sie nach den Regeln von einem Datenbankadministrator definierten hinzugefügt.

Wenn wir Ausgabe ISRT Aufruf ohne Angabe eines Schlüsselfeld, dann einfügen Regel sagt der wo zu platzieren die Segmente relativen zu bestehenden Doppelsegmenten . Da unten sind die Einsatzregeln:

  • Erste - Wenn die Regel ist zunächst, wird das neue Segment vor irgendwelchen vorhandenen Zwillinge hinzugefügt.

  • Last - Wenn die Regel zuletzt wird das neue Segment, ist hinzugefügt nachdem alle vorhandenen Zwillinge .

  • Hier - Wenn die Regel hier ist, es ist hinzugefügt bei der aktuellen Position Verhältnis zu bestehenden Zwillinge, welche können die erste, letzte oder überall sein. .

Status Codes

Die folgende Tabelle zeigt die relevant Statuscodes nach einer ISRT Aufruf:

Status Code Beschreibung
Plätze Erfolgreicher Anruf
GE Multiple SSA verwendet werden und die DL / I kann nicht das Gespräch mit dem angegebenen Pfad zu erfüllen.
II Versuchen zu hinzuzufügen ein Segment Auftreten, dass bereits in der Datenbank vorhanden .
LB / LC LD / LE Wir bekommen diese Statuscodes während der LOAD-Verarbeitung. In den meisten Fällen zeigen sie, dass Sie sind nicht Einsetzen der Segmente in einer genauen hierarchischen Reihenfolge.

bekommen Halten Anruf

Punkte zu beachten:

  • Es gibt drei Arten von Get Anruf halten, welche die wir in einem DL angeben / nenne ich:

    • bekommen Halten Unique (GHU)
    • bekommen Halten nächste (GHN)
    • bekommen Halten nächste im Eltern (GHNP)
  • Hold-Funktion spezifiziert dass wir gehen, um das Segment nach dem Abrufen zu aktualisieren. Also, bevor ein REPL oder DLET Anruf, muss eine erfolgreiche Halteanruf muss ausgegeben werden erzählt die DL / I eine Absicht, die Datenbank zu aktualisieren.

REPL Anruf

Punkte zu beachten:

  • Nach einer erfolgreichen Bekommen Halten Anruf, geben wir eine REPL Anruf zu aktualisieren um ein Segment Auftreten . .

  • Wir können nicht die Länge eines Segments zu ändern verwendung einer REPL Anruf..

  • Wir können nicht den Wert eines Schlüsselfeld ändern, verwendung einer REPL Anruf..

  • Wir können nicht an einen qualifizierten SSA mit einer REPL Anruf. Wenn wir spezifizieren einen qualifizierten SSA, dann schlägt der Aufruf fehl.

CALL 'CBLTDLI' USING DLI-GHU
                     PCB-NAME
                     IO-AREA
                     LIBRARY-SSA
                     BOOKS-SSA
                     ENGINEERING-SSA
                     IT-SSA.
                     
*Move the values which you want to update in IT segment occurrence*

CALL ‘CBLTDLI’ USING DLI-REPL
                     PCB-NAME
                     IO-AREA.

Das obige Beispiel aktualisieren wird die IT-Segment Auftreten verwendung einer REPL Anruf. Zunächst stellen wir eine GHU Anruf, zu erhalten um das Segment Auftreten wir aktualisieren wollen. Dann wir eine Ausgabe REPL Anruf, aktualisieren um die Werte dieses Segments ..

DLET Anruf

Punkte zu beachten:

  • DLET Anruf arbeitet viel in der gleichen Weise wie ein REPL Anruf tut.

  • Nach einer erfolgreichen Bekommen Halten Anruf , geben wir eine DLET Anruf um ein Segment Auftreten löschen..

  • Wir können nicht an einen qualifizierten SSA mit einer DLET Anruf. Wenn wir spezifizieren einen qualifizierten SSA, dann schlägt der Aufruf fehl.

CALL 'CBLTDLI' USING DLI-GHU
                     PCB-NAME
                     IO-AREA
                     LIBRARY-SSA
                     BOOKS-SSA
                     ENGINEERING-SSA
                     IT-SSA.
                     
CALL ‘CBLTDLI’ USING DLI-DLET
                     PCB-NAME
                     IO-AREA.

Das obige Beispiel löscht das IT-Segment Auftreten mit einem DLET Anruf. Zunächst stellen wir eine GHU Anruf, um das Segment Auftreten wir löschen wollen. Dann stellen wir eine DLET Anruf, um die Werte dieses Segments zu aktualisieren.

Statuscodes

Die folgende Tabelle zeigt die entsprechenden Statuscodes nach einer REPL oder DLET Aufruf:

Status Code Beschreibung
Plätze Erfolgreicher Anruf
AJ Qualifizierte SSA verwendet auf REPL Oder DLET Anruf .
DJ Programm einen Aufruf zu ersetzen, ohne dass eine unmittelbar vorhergehende bekommen halten Anrufe.
DA Programm machen eine Änderung an Segments Schlüsselfeld vor der Ausstellung des REPL oder DLET Anruf.
Advertisements