Ansicht
Dokumentation

ABENOPEN_SQL_STREAMING - OPEN SQL STREAMING

ABENOPEN_SQL_STREAMING - OPEN SQL STREAMING

Vendor Master (General Section)   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Streaming

unterstützt das Streaming für LOBs in Datenquellen.

Systemklassen und -Interfaces für Lese- und Schreibströme

Die Systemklassen für die verschiedenen Arten von möglichen Datenströmen sind:

Dazu gibt es die speziellen Interfaces

für den vom Stromtyp unabhängigen Zugriff auf die Lese- und Schreibströme. Für weitere ressourceunabhängige Klassen und Interfaces sowie die Hierarchie der Objekttypen siehe die Abbildung und Erklärung unter Streaming.

Wichtige Methoden

Die Methoden für das Streaming in sind die gleichen wie beim allgemeinen Streaming.

Datenquellen und Datensenken

Als Datenquellen bzw. Datensenken kommen LOBs in Datenbanktabellen in Frage, die im ABAP Dictionary deklariert sind. Die Instanzen obiger Klassen sind Datenströme, die an LOBs angebunden sind. Sie gehören zu den LOB-Handles und implementieren die entsprechenden Interfaces. Die Verwendung in erfolgt über Referenzvariablen, die auf solche LOB-Handles zeigen.

Datenströme für LOBs erzeugen

Leseströme

Ein mit einem LOB verbundener Lesestrom, d.h., eine Instanz der Klasse CL_ABAP_DB_C_READER bzw. CL_ABAP_DB_X_READER kann nur dadurch erzeugt werden, dass in der INTO-Klausel der Anweisung SELECT ein LOB der Ergebnismenge einer Referenzvariable für einen Lesestrom zugewiesen wird.

Siehe SELECT - LOB-Handles.

Schreibströme

Ein mit einem LOB verbundener Schreibstrom, d.h., eine Instanz der Klasse CL_ABAP_DB_C_WRITER bzw. CL_ABAP_DB_X_WRITER kann nur dadurch erzeugt werden, dass in den Anweisungen INSERT, UPDATE oder MODIFY eine Referenzvariable für einen Schreibstrom als Quelle angegeben wird. Allgemeinere Referenzvariablen können nicht angegeben werden.

Siehe INSERT, UPDATE, MODIFY dbtab - LOB-Handles.

Datenströme für LOBs schließen

Da die Anzahl gleichzeitig geöffneter Datenströme auf 16 beschränkt ist, sollten sie so bald wie möglich mit ihrer Methode CLOSE geschlossen werden. Unabhängig davon werden Leseströme implizit am Ende eines Durchgangs einer SELECT-Schleife und am Ende einer Datenbank-LUW geschlossen. Ein offener Schreibstrom wird nur durch einen Datenbank-Rollback implizit geschlossen. Bei einem Datenbank-Commit führt ein offener Schreibstrom dagegen zu dem Laufzeitfehler COMMIT_STREAM_ERROR.

Beispiele






ROGBILLS - Synchronize billing plans   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 6573 Date: 20240523 Time: 120237     sap01-206 ( 67 ms )