Hallo,
ich habe ein Problem mit einem Perl- Skript. Leider muß ich dieses Skript "betreuen" obwohl ich kein Perl beherrsche.
Das Skript macht einen DBIConnect :
DBI->connect("dbi:PgPP:dbname=".$db.";host=".$host.";p ort=".$port."",$kennung,$pw,{ AutoCommit => 0, RaiseError => 1, PrintError => 1})
Der SQL wird mit mit einem $abfrage->execute ausgeführt. Wenn im SQL eine Funktion benutzt wird, in der ein raise notice enthalten ist, liefert der SQL kein Ergebnis.
Ich habe zwar im Postgres-Handbuch unter "40.2. Database Access from PL/Perl" folgenden Hinweis gefunden:
Emit a log or error message. Possible levels are DEBUG, LOG, INFO, NOTICE, WARNING, and ERROR. ERROR raises an error condition; if this is not trapped by the surrounding Perl code, the error propagates out to the calling query, causing the current transaction or subtransaction to be aborted. This is effectively the same as the Perl die command..
Leider weiß ich aber nicht, wie ich das Problem jetzt lösen könnte.
Kann mir ein Perl-Experte einen Hinweis geben?
PL/Perl ist etwas anderes als Perl. Das eine läuft serverseitig, das andere clientseitig.
Wenn du da in dem Skript mehr als nur ein paar Variablen ändern willst, such dir jemand, der das für dich macht - oder lern Perl.
Eines von beiden wirst du auf die Dauer brauchen.
Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören
Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler
PostgreSQL Service & Support
Ich habe die Lösung gefunden.
Wir hatten ein DBI-Modul PgPP eingesetzt. Diese haben wir jetzt gegen das aktuelle Modul DBD:PG getauscht, und jetzt klappt alles wunderbar.
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen