## IMPORT COLUMNS

Mit dem IMPORT COLUMNS-Kommando können Sie einzelne Spaltenwerte einer Tabelle importieren.

### Voraussetzungen

Sie benötigen die Demo-Datenbank TESTDB. Legen Sie den Datenbankbenutzer MONA an, falls dieser noch nicht vorhanden ist. Legen Sie als Datenbankbenutzer MONA das Schema HOTEL an, falls dieses noch nicht vorhanden ist. Legen Sie im Schema HOTEL die gewünschte Tabelle an, falls diese noch nicht vorhanden ist.

Sie haben die erforderlichen Daten mit dem EXPORT COLUMNS-Kommando exportiert.

Starten Sie den Loader als Datenbankbenutzer MONA und melden Sie sich an die Datenbank TESTDB an. Verwenden Sie den Sitzungsmodus.

loadercli –d testdb –u mona,red –s hotel

### Beispiele

Die Daten sollen in die Tabelle CUSTOMER des Schemas HOTEL importiert werden.

Durch die Angaben nach dem Schlüsselwort DATA können Sie steuern, welche Anwendungsdaten Sie importiert wollen.

Wenn Sie Tabellen importieren, legt der Loader auch alle für die Tabelle definierten Objekte und Verknüpfungen (Views, Fremdschlüsselbeziehungen zu anderen Tabellen...) an. Gegebenenfalls meldet der Loader, wenn die dafür erforderlichen Objekte nicht vorhanden sind und daher der Import nicht ausgeführt werden kann. Typische Fehlermeldungen sind z.B. die Fehlermeldungen -25451 und -25392. Wenn solche Fehler auftreten, wird der Import an dieser Stelle abgebrochen.

Testen Sie das Loader-Verhalten für verschiedene Tabellen. Legen Sie gegebenenfalls die erforderlichen abhängigen Objekte in der Datenbank TESTDB an. Für die Tabelle CUSTOMER z.B. besteht die Abhängigkeit zur Tabelle CITY.

#### Import aller Anwendungsdaten einer Tabelle

Sie können alle Anwendungsdaten einer Tabelle importieren.

IMPORT COLUMNS TABLE hotel.customer
DATA INSTREAM 'customer_csv.data'

Die Anwendungsdaten (DATA) werden im Format CSV (Vorschlagswert) importiert.

IMPORT COLUMNS TABLE h otel.customer
cno 1-5
title 6-25
firstname 26-45
name 46-85
zip 86-105
address 106-145
DATA INSTREAM 'customer_fwv.data' FWV

Die Anwendungsdaten (DATA) werden im Format FWV importiert.

IMPORT COLUMNS TABLE hotel.customer
cno 1-5
title 6-25
firstname 26-45
name 46-85
zip 86-105
address 106-145
DATA INSTREAM 'customer_fwvbinary.data' FWV BINARY

Alle (TABLE) Anwendungsdaten (DATA) werden im Format FWV BINARY importiert.

Zu allen Spalten der Tabelle müssen Daten in dem entsprechenden Datenstrom vorhanden sein. Andernfalls meldet der Loader einen Fehler.

Siehe auch:

Loader, Datenstrom, CSV, FWV, FWV BINARY

Ein Import aller Spaltenwerte einer Tabelle ist auch mit dem Kommando IMPORT TABLE ... DATA ... möglich.

#### if_condition

Sie können einzelne Datensätze aus dem DATA-Datenstrom selektieren und nur diese in die angegebene Tabelle importieren. Beachten Sie die Reihenfolge der Syntaxelemente. Geben Sie zuerst die IF-Bedingung an.

IMPORT COLUMNS TABLE hotel.customer
IF POS 1 > '4000'
DATA INSTREAM 'hotel_csv.data'

In die Tabelle CUSTOMER werden die Zeilen importiert, die in der Spalte CNO einen Wert über 4000 haben.

Siehe auch:

Loader, Selektieren von Datensätzen

DUPLICATES-Klausel

Für die Steuerung des Verhaltens bei Auftreten von gleichen Tabellenzeilen verwenden Sie die DUPLICATES-Klausel. Beachten Sie die Reihenfolge der Syntaxelemente. Geben Sie die DUPLICATES-Klausel gegebenenfalls nach der IF-Bedingung an.

IMPORT COLUMNS TABLE hotel.customer
UPDATE DUPLICATES
DATA INSTREAM 'customer_csv.data'

Die Anwendungsdaten der Tabelle CUSTOMER werden importiert und eine existierende Zeile mit dem importierten Datensatz überschrieben.

Siehe auch:

Loader, Duplicates-Klausel (IMPORT COLUMNS-Kommando)

#### Import der Anwendungsdaten bestimmter Spalten einer Tabelle

Sie können einzelne Spaltenwerte einer Tabelle importieren.

IMPORT COLUMNS TABLE hotel.customer
cno 1
title 2
name 3
zip 4
address 5
DATA INSTREAM 'customer_csv.data'

Die Spalten der Tabelle CUSTOMER werden in der angegebenen Reihenfolge importiert.

Der Loader erwartet nur für die angegebenen Spalten Daten im Datenstrom, die in der beim Import gewünschten Reihenfolge vorliegen müssen. Die anderen Spalten werden mit ihrem DEFAULT-Wert oder dem NULL-Wert importiert, je nachdem, wie die Spalten definiert wurden.

Sie müssen in all diejenigen Spalten Daten importieren, für die kein DEFAULT- oder NULL-Wert bei der Definition der Tabelle definiert wurde und für die die Eingabe von bestimmten Werten durch eine Integritätsbedingung erforderlich ist. Wird eine der notwendigen Spalten nicht angegeben, bricht der Loader die Verarbeitung mit einem Fehler ab.

#### Behandlung von LONG-Werten

Wenn Sie die Formate CSV und FWV [BINARY] verwenden, werden für die LONG-Daten beim Export extra Datenströme angelegt.

Die Daten der Tabelle HOTEL des Schemas HOTEL sollen importiert werden. Die Tabelle HOTEL besitzt die LONG-Spalte INFO, deren Inhalt in einen eigenen Datenstrom exportiert wurde. Geben Sie das LOB-Syntaxelement nach dem DATA-Syntaxelement an.

IMPORT COLUMNS TABLE hotel.hotel
DATA INSTREAM 'hotel_csv.data'
LOB INSTREAM INFO 'hotel_info_csv.long'

Alle Spalten der Tabelle HOTEL werden importiert. Die LONG-Werte befinden sich im Datenstrom hotel_info_csv.long.

Siehe auch:

Loader, Exportieren und Importieren von LONG-Werten

### Vollständige Syntax des IMPORT COLUMNS-Kommandos

Die Kombination der Syntaxmöglichkeiten kann zu entsprechend komplexen Kommandos führen. Beachten Sie die Reihenfolge der Syntaxelemente.

IMPORT COLUMNS TABLE hotel.customer
IF POS 1 >= '4000'
UPDATE DUPLICATES
cno 1
title 2
name 3
zip 4
address 5
DATA INSTREAM FILE 'customer_csv.data' CSV

Eine vollständige Syntaxbeschreibung finden Sie in der Dokumentation Loader, IMPORT COLUMNS-Kommando.

Siehe auch:

Weitere Kommandos zum Importieren