loadTable()

Die Systemfunktion 'sqlLib.loadTable()' lädt Daten aus einer Datei in eine relationale Datenbank. Die Funktion ist nur für mit EGL generierte Java™-Programme verfügbar.

Um Informationen aus einer relationalen Datenbanktabelle zu entladen und in eine Datei einzufügen, verwenden Sie die Funktion 'sqlLib.unloadTable()'.

Syntax

  sqlLib.loadTable(
    Dateiname STRING in,
    INSERT INTO-Klausel STRING in
    [, Begrenzer STRING in
    ])
Dateiname
Der Name der Datei, aus der Daten geladen werden. Dieser Name ist entweder ein vollständig qualifizierter Name oder ein relativer Name bezogen auf das Verzeichnis, von dem aus das Programm aufgerufen wird.
INSERT INTO-Klausel
Gibt die Tabelle und die Spalten an, in denen sich die Daten befinden. Verwenden Sie die Syntax einer INSERT INTO-Klausel in einer SQL-Anweisung INSERT, wie im folgenden Beispiel:
  "INSERT INTO myTable(column1, column2)"
Die folgende Beispielklausel reicht aus, wenn die Datei Werte für alle Tabellenspalten in der Spaltenreihenfolge enthält:
  "INSERT INTO myTable"
Begrenzer
Gibt das Symbol an, mit dem die Werte in der Datei voneinander getrennt werden. (Die einzelnen Datenzeilen müssen durch ein Zeilenvorschubzeichen voneinander getrennt sein.)

Das Standardsymbol für 'Begrenzer' ist der Wert in der Java-Laufzeiteigenschaft 'vgj.default.databaseDelimiter', deren Standardwert wiederum folgendes Zeichen ist: (|).

Die folgenden Symbole sind nicht verfügbar:
  • Hexadezimalzeichen (0 bis 9, a bis f, A bis F)
  • Umgekehrter Schrägstrich (\)
  • Zeilenvorschubzeichen oder 'Strg+J'
Weitere Informationen finden Sie im Beispiel.

Beispiel

Im folgenden Beispiel wird das Tabulatorzeichen (9 in Dezimalschreibweise in ASCII) in einem Zeichen gespeichert. Anschließend wird dieses Zeichen als Begrenzer verwendet.

  myTabChar CHAR(1) = strLib.intAsChar(9);
  sqlLib.loadTable("myDataFile.txt", "INSERT INTO myTable", myTabChar);    

Leere Zeichenfolgen und Nullen

In den Dateien, auf die mit der Funktion 'sqlLib.loadTable()' oder 'sqlLib.unloadTable()' zugegriffen wird, wird eine Zeichenfolge mit Nulllänge durch das Zeichen "\", gefolgt von einem Leerzeichen, dargestellt, und eine Null wird durch zwei Begrenzer hintereinander dargestellt.

Betrachten Sie beispielsweise die folgende Zeichenfolge, wenn das Zeichen "|" als Begrenzer verwendet wird:
||\ | |1234

Diese Zeichenfolge enthält eine Null, eine Zeichenfolge mit Nulllänge, eine Zeichenfolge aus einem Leerzeichen und "1234".

Kompatibilität

Tabelle 1. Hinweise zur Kompatibilität für 'sqlLib.loadTable()'
Plattform Problem
COBOL-Generierung Die Funktion wird nicht unterstützt.

Feedback