Syntax
<load_column_spec_mlt> ::= <
load_column_spec> <load_column_spec_mlt>Verwendung
Sie beschreiben mit dieser Syntaxregel in einem Kommando zum Laden von Anwendungsdaten die zu ladenden Datensätze eines
Datenstroms und ihre Zuordnung zu den Spalten der Zieltabelle.Definition der Tabelle:
CREATE TABLE sqltravel00.customer (cno FIXED(4,0), name CHAR(10) NOT NULL, zip CHAR(5), address CHAR(25), PRIMARY KEY (cno))
Ladekommando:
DATALOAD TABLE kunde
cno 01-04
name 06-16
zip 17-22
address 23-48
INFILE 'customer.data' FORMATTED
Zu beachtende Regeln
Für jede Spalte, die Sie im Lade-Kommando angeben, müssen Daten im Datenstrom vorhanden sein.
Wenn Sie im Kommando Spalten der Zieltabelle nicht angeben, wird beim Ladevorgang die gesamte Spalte mit dem definierten Vorschlagswert für diese Spalte belegt. Wenn kein spezieller Vorschlagswert für die Spalte festgelegt ist, wird der Wert NULL geladen.
DATALOAD TABLE customer
cno 01-04
name 06-16
INFILE 'customer.data' FORMATTED
zip und address werden beim Laden mit dem Vorschlagswert belegt
Schlüsselspalten und Pflichtspalten (Spalten, die NOT NULL ohne Vorschlagswert definiert sind) müssen im Lade-Kommando angegeben werden. Ansonsten wird die Verarbeitung mit einem SQL-Fehler abgebrochen.
DATALOAD TABLE customer
name 06-16
zip 17-22
address 23-48
INFILE 'customer.data' FORMATTED
Das Kommando wird mit SQL-Fehler abgebrochen, da die Spalte
cno fehlt.Wenn Sie im Lade-Kommando keine Spalten für die Zieltabelle angeben, dann wird die Tabelle so geladen, als wären alle Spalten der Zieltabelle im Kommando angegeben worden. In diesem Fall müssen für alle Spalten der Zieltabelle Daten im Datenstrom vorhanden sein.
DATALOAD TABLE customer
INFILE 'customer.data' FORMATTED
Für alle Spalten der Zieltabelle müssen Daten im Datenstrom vorhanden sein.