Fehlerbehandlung bei DBI

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

$db->{RaiseError} = 1;

# later ...

eval {
   $db->do($statement);
};
if ($@) {
   print "Fatal error: ", $db->errstr, "\n";
} else {
   print "OK\n";
}

*Bei der Voreinstellung muß bei jeder DBI-Operation überprüft werden, ob sie geklappt hat. Das ist mitunter umständlich.
 
*Mit dem Setzen der Variablen RaiseError (beim Datenbank-Objekt) auf 1 ist jeder Fehler fatal, d.h. das Programm würde normalerweise abgebrochen werden.
 
*Dies kann vermieden werden, indem die ``gefährlichen'' Anweisungen in eval eingebettet werden.
 
*Wenn nach eval in $@ eine Fehlermeldung vorliegt, dann ist etwas schiefgegangen.
 
*Mit $db->errstr besteht die Möglichkeit, auf die Fehlermeldung von DBI zuzugreifen.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1996, 1998, 1999, 2000 Andreas Borchert, in HTML konvertiert am 07.02.2000