Anfang des Inhaltsbereichs

 Python: Beispiel Nr. 4 

Beispiel für Aufruf des Loader mit Python-Skript

Aufbau einer Datenbanksitzung
Anmelden an die Datenbankinstanz
Anlegen einer Tabelle  und Abfragen des Fehlercodes
Laden von Daten in die Tabelle mittels Loader-Kommando/s und Abfragen des Fehlercodes
Abmelden

 

# Verweis auf Python-Libraries
# ----------------------------

import sys
import loader

# Parsen der Aufrufargumente
# --------------------------

user_name = sys.argv [1]
password = sys.argv [2]
database_name = sys.argv [3]
data_path = sys.argv[4]
server_node = ''

# Aufbau einer Datenbanksitzung zum Loader
# ------------------------------------------------------

session = loader.Loader (server_node, database_name)

# Anmelden an die Datenbankinstanz
# -------------------------------------

session.cmd ('use user %s %s;' % (user_name, password))

# Abfrage, ob Tabelle existiert durch Abrage des Fehlercodes
# hierzu wird die Methode sql verwendet
# ----------------------------------------------------------

rc = session.sql("EXISTS TABLE CUSTOMER")

If rc!=0

   # Then-Zweig der If-Anweisung muss bei Python eingerückt sein
   # Anlegen der Tabelle CUSTOMER
   # ----------------------------------------------------------

   rc = session.sql( """CREATE TABLE customer (
                       cno             FIXED(4),
                       name            CHAR(10) ASCII,
                       zip             CHAR(5)  ASCII,
                       city            CHAR(12) ASCII,
                       PRIMARY KEY (cno) """)   

print rc

If rc==0

   # Then-Zweig der If-Anweisung muss bei Python eingerückt sein
   # Laden der Tabelle CUSTOMER
   # ----------------------------------------------------------

   loadrc = session.sql ("""DATALOAD TABLE customer
                            cno       1-4
                            name      6-12
                            zip       14-18
                            city      20-31
                            INFILE %s\customer.dat""" %data_path )
   print loadrc 

session.cmd ("COMMIT")

# Beenden der Datenbanksitzung
# -------------------------------------

del session

Ende des Inhaltsbereichs