Mit diesem Kommando des Loader können Sie das Entladen von Anwendungsdaten aus Datenbanktabellen steuern.
<dataextract_statement> ::=
DATAEXTRACT <select_expression>
[OUTFIELDS] [<output_column_list>
] <extract_files_spec>
| DATAEXTRACT <restore_spec>
TABLE <table_name>
[<order_clause>
] <extract_files_spec>
Anstelle des Schlüsselworts DATAEXTRACT können Sie auch die Schlüsselworte EXTRACT DATA verwenden.
Sie müssen die Zugriffsberechtigung für die zu entladende Tabelle haben.
Für die Ausführung der Variante 2 des DATAEXTRACT-Kommandos müssen Sie auch Eigentümer der Tabelle sein.
Der Loader bietet Ihnen die folgenden Varianten des DATAEXTRACT-Kommandos an.
Mit dieser Variante des Kommandos können Sie
· die Spalten der Tabelle festlegen, die entladen werden sollen
· mehrere zu entladende Tabellen miteinander verknüpfen
· eine Sortierreihenfolge für die extrahierten Daten festlegen
DATAEXTRACT cno, name, zip, address from customer
OUTFILE 'customer.data'
DATAEXTRACT
* from article
OUTFIELDS anr 01-08
bez 09-39
bestand 40-43 INTEGER
min_best 44-45 INTEGER
bestellt 46-49 INTEGER
lieferdatum 50-57
preis 58-65 DECIMAL (2)
gewicht 66-69 REAL
OUTFILE 'article.data' FORMATTED
Mit dieser Variante des Kommandos können Sie nur einzelne Tabellen vollständig entladen. Sie entladen dabei alle Anwendungsdaten einer Tabelle in einen Datenstrom und die Tabellendefinition im Datenbankkatalog in einen zweiten Datenstrom. Anhand dieser beiden Datenströme können Sie die entladene Tabelle wieder anlegen und alle Anwendungsdaten vollständig laden.
DATAEXTRACT FOR DATALOAD TABLE article
OUTFILE 'article.command'
OUTFILE 'article.data'
Datenstrom für Definition aus
Datenbankkatalog: article.command
Datenstrom für Anwendungsdaten: article.data
Der Loader erzeugt aus den Angaben im DATAEXTRACT-Kommando intern eine SELECT-Anweisung und baut eine Ergebnistabelle auf. Die Daten dieser Ergebnistabelle werden dann entsprechend der Angaben im Kommando in den Zieldatenstrom entladen.
Während der Ausführung eines DATAEXTRACT-Kommandos sind alle Tabellen, aus denen Daten entladen werden sollen, für das Schreiben gesperrt. Damit können andere Benutzer während des Entladens der Daten keine Änderungen an den zu entladenden Tabellen vornehmen.
Ergebnis
Die Daten der zu entladenden Tabellen wurden in den bzw. die Datenströme entladen.
Die Tabellendaten können mit Hilfe eines DATALOAD- und/oder FASTLOAD-Kommandos wieder in die Datenbankinstanz zurückgeladen werden.
Fehlerfall
Der Entladevorgang kann nicht erfolgreich beendet werden. In diesem Fall protokolliert der SAP DB Loader die Anzahl erfolgreich entladener Datensätze in der Protokolldatei.