Ein Skript ist geschrieben, die Verbindung zur Datenbank funktioniert und ein wenig Ordnung haben wir dank SQL::Library auch geschaffen. In diesem Artikel werden wir unsere Skripte für die Nutzen bei einer größeren Anzahl von Datenbanken vorbereiten, indem wir die Konfiguration der Datenbank-Verbindungen mit Hilfe von XML::Simple auslagern. Das Problem In den bisherigen Artikeln dieser Reihe haben wir die Datenbank-Verbindungen in den Skripten „hart“ codiert. Werden diese Skripte in weiteren Datenbanken eingesetzt, muss man sich Gedanken über die Konfigurierbarkeit machen. Es stehen uns verschiedene Ansätze zur Verfügung, die im Laufe dieses Artikels erläutert werden. @ARGV: Die „faule“ Variante Das Array @ARGV enthält immer sämtliche Argumente der Kommandozeilen (siehe Abbildung 1). Wir könnten daher einfach mit $ARGV[0] auf z. B. den Datenbanknamen zugreifen, mit $ARGV[1] auf den Benutzer und mit $ARGV[2] auf das Passwort. Dies hat allerdings folgende Nachteile: Die Reihenfolge der Argumente ist festgelegt • und muss dem Anwender bekannt sein. Das Passwort ist potentiell in der Prozess• liste für jedermann sichtbar. Es entsteht zuviel Programmierarbeit.• Getopt: Etwas mehr Kontrolle Bei der Verwendung von Optionsschaltern mit Getopt::Std oder Getopt::Long ersparen wir dem User zumindest das Einhalten einer bestimmten Reihenfolge und können z. B. eine Online-Hilfe einbauen (siehe Abbildung 2). Die übrigen Probleme bleiben: Alle Connect-Daten für alle Datenbanken • müssen bekannt sein. Das Passwort ist potentiell in der Prozess• liste für jedermann sichtbar. Es entsteht noch mehr Tipparbeit