Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Umgestellte Datenbank umstrukturieren

In einer vom 2-Kbyte-Format auf das 4-Kbyte- bzw. 8-Kbyte-Format umgestellten Datenbank können Sie den erweiterten Wertebereich für die maximale Anzahl Sätze pro Satzart ohne Änderung des Datenbankschemas nutzen, es sei denn, in der Schema-DDL ist innerhalb der Satzbeschreibung oder der LOCATION-MODE-Klausel ein Feld vom Typ DATABASE-KEY definiert - dieses müssen sie zur Nutzung des erweiterten Wertebereichs für Sätze pro Satzart auf DATABASE-KEY-LONG umstellen.
Dies hat den Vorteil, dass Anwenderprogramme zeitlich von der Datenbankumstellung entkoppelt angepasst werden können.
Änderungen im Schema sind erforderlich, wenn Sie für Satzarten mit explizit definiertem Database-Key-Feld den erweiterten Wertebereich uneingeschränkt nutzen wollen.

In diesem Abschnitt sind nur die zur Nutzung des erweiterten Wertebereichs erforderlichen Änderungen von Schema-DDL und Subschema-DDL dargestellt. Die Umstrukturierung einer Datenbank ist ausführlich beschrieben im Kapitel „Datenbank umstrukturieren (BCHANGE, BALTER)".

Wenn DB-Anwenderprogramme Database-Key-Werte einer Satzart verwenden, zu der auch künftig nicht mehr als 16 777 215 Sätze gespeichert werden (RSQ < 224-1), müssen Sie beim Umstrukturieren der Datenbank darauf achten, dass die betreffende Satzart eine Satzartnummer (REC-REF) < 255 erhält. Auf diese Weise lässt sich der Aufwand für Anpassung und ggf. Neuübersetzung der Anwenderprogramme reduzieren, da dann entsprechende USAGE IS DATABASE-KEY-Felder nicht angepasst werden müssen (siehe Abschnitt „COBOL- und CALL-DML-Anwendungen anpassen").

Bereits vorhandene Database-Key-Werte werden in das erweiterte Format umgesetzt, wenn Sie bei der Umstrukturierung der Datenbank den Datenbestand mit dem Dienstprogramm BALTER anpassen (siehe Abschnitt „Schemaänderungen analysieren und Datenbestand anpassen mit BALTER").

Um Ihre Datenbank zu optimieren, sollten Sie die Angaben zum Mengengerüst in der SSL an die erweiterten Wertebereiche anpassen (siehe Handbuch „Entwerfen und Definieren"). 

Datenbankschema anpassen

Folgende Sprachmittel der Schema-DDL müssen Sie für die Nutzung erweiterter Database-Key-Werte anpassen:

  • TYPE IS DATABASE-KEY ändern in TYPE IS DATABASE-KEY-LONG

  • LOCATION MODE IS DIRECT ändern in LOCATION MODE IS DIRECT-LONG

Bei Satzarten, die ein Database-Key-Feld (TYPE IS DATABASE-KEY) enthalten, prüfen Sie, ob dieses Database-Key-Feld künftig erweiterte Database-Key-Werte aufnehmen soll. Dabei ist zu beachten, dass ein Database-Key-Feld nicht in jedem Fall für den Database Key des Satzes verwendet werden muss, in dem es definiert ist. Es kann z.B auch für den Database Key einer anderen Satzart verwendet werden. Für die Entscheidung, ob ein Feld vom Typ DATABASE-KEY in ein DATABASE-KEY-LONG-Feld zu ändern ist, sollten Sie deshalb auch mögliche Querverbindungen untersuchen.
Die Änderung eines DATABASE-KEY-Feldes in ein DATABASE-KEY-LONG-Feld erfordert außerdem die Änderung aller LOCATION MODE IS DIRECT-Klauseln in LOCATION MODE IS DIRECT-LONG, in denen dieses DATABASE-KEY-LONG-Feld angesprochen wird (siehe Handbuch „Entwerfen und Definieren").

Subschemata anpassen

Zu jedem in den Typ DATABASE-KEY-LONG geänderten Database-Key-Feld des Datenbankschemas müssen Sie in den betroffenen Subschema-Beschreibungen die zugehörigen USAGE IS DATABASE-KEY-Klauseln ändern in USAGE IS DATABASE-KEY-LONG (siehe Handbuch „Entwerfen und Definieren"). Anschließend müssen Sie diese Subschemata sowie die darauf zugreifenden Anwenderprogramme neu übersetzen.

Wenn alle Satzarten eines Subschemas, die ein DATABASE-KEY-LONG-Feld enthalten, mit der Subschema-DDL-Anweisung COPY übernommen werden, müssen Sie dieses Subschema nicht ändern, sondern nur neu übersetzen.

Welche Subschemata angepasst werden müssen, ermitteln Sie nach dem BALTER-Lauf zur Datenbestandsanpassung (siehe "Schemaänderungen analysieren und Datenbestand anpassen mit BALTER") mit dem DDL-Compiler-Lauf zum Übernehmen der Subschemata, der inkompatible Subschemata herausfiltert (siehe Abschnitt „Kompatible Subschemata übernehmen").