it-swarm.com.de

Wie kann ich gespeicherte postgresql-Prozeduren debuggen?

Mir ist klar, dass es nichts Vergleichbares zu SQL Server Management Studio gibt. Daher bin ich mental darauf vorbereitet, das gute alte printf-Debugging zu verwenden.

Die einzige Frage ist, wie man "printf" aus einer gespeicherten Prozedur macht.

29
mark

Um eine Nachricht zu "drucken", können Sie raise notice aus einer PL/pgSQL-Funktion heraus:
http://www.postgresql.org/docs/current/static/plpgsql-errors-and-messages.html

Beachten Sie, dass der Client den Wert von "client_min_messages" auf die entsprechende Ebene gesetzt haben muss, um die "Benachrichtigung" zu erhalten.

pgAdmin hat einen Debugger für Funktionen: http://www.pgadmin.org/docs/1.18/debugger.html

(Aber ich habe es nie benutzt, da ich pgAdmin nicht benutze).

31

Es hört sich so an, als würden Sie nach tatsächlichen Debugging-Möglichkeiten suchen. PostgreSQL hat diese Funktionalität ab PostgreSQL 8. eingeführt.

Debugger

Es ist fantastisch und macht PostgreSQL seinem Slogan "der fortschrittlichsten Open-Source-Datenbank der Welt" gerecht. Es ist ein bisschen mühsam, loszulegen, aber dieseLinks könnten Ihnen den Einstieg erleichtern. Nach der Aktivierung können Sie über ein praktisches Rechtsklick-Menü in PGAdmin Haltepunkte setzen oder Eingaben definieren und Funktionen auswerten. Right click menu

11
Joel B

Neben den vertrauenswürdigen Befehlen ol 'RAISE gibt es auch einige Tools von Drittanbietern, von denen ich gehört habe, obwohl ich sie noch nie verwendet habe.

5
bma