In diesem Beispiel verwenden Sie die Methoden sql und prepare des Moduls sdb.sql. Sie führen eine SQL-Anweisung mehrfach mit verschiedenen Werten aus, ohne dass das Datenbanksystem Python-Werte konvertieren muss.
...
1. Erstellen Sie ein Python-Skript sample.py mit folgendem Inhalt:
#
# Python-Module importieren
# -------------------------------------------
import sys
import sdb.sql
#
# Verbindung zur Datenbankinstanz herstellen
# -------------------------------------------
database_user = sys.argv [1]
database_user_password = sys.argv [2]
database_name = sys.argv [3]
session = sdb.sql.connect (database_user, database_user_password, database_name)
#
# Testtabelle customer anlegen
# (um sicherzustellen, dass diese Tabelle noch nicht vorhanden ist,
# wird zunächst die SQL-Anweisung zum Löschen der Tabelle
# ausgeführt)
# ----------------------------------------------
try:
session.sql ('DROP TABLE hotel.customer')
except sdb.sql.SQLError:
pass
session.sql ("""CREATE TABLE customer (cno FIXED(4) PRIMARY KEY)""")
#
# Objekt der Klasse SapDB_Prepared erzeugen
# ------------------------------------------------
insert = session.prepare ('INSERT INTO customer (cno) VALUES (?)')
for i in xrange (1,11):
# die Methode execute führt die vorbereitete
# SQL-Anweisung mit allen Parametern der Liste aus
insert.execute ([i])
cursor = session.sql ('SELECT cno FROM customer')
for row in cursor: print row
#
# Verbindung zur Datenbankinstanz beenden
# -----------------------------------------------
session.release ()
2. Rufen Sie das Python-Skript auf:
python sample.py MONA RED DEMODB
(1,)
(2,)
(3,)
(4,)
(5,)
(6,)
(7,)
(8,)
(9,)
(10,)