Stored Procedures und Funktionen in PostgreSQL – Erste Schritte

Eine Stored Procedure und eine benutzerdefinierte Funktion (UDF) ist ein Satz von SQL- und prozeduralen Anweisungen (Deklarationen, Zuweisungen, Schleifen, Kontrollfluss usw.), die auf dem Datenbankserver gespeichert sind und über die SQL-Schnittstelle aufgerufen werden können.

Kurzes Beispiel:

In PostgreSQL werden sowohl gespeicherte Prozeduren als auch benutzerdefinierte Funktionen mit der Anweisung CREATE FUNCTION erstellt. Es gibt Unterschiede zwischen dem Begriff der Stored Procedures und Funktionen in Datenbanksystemen:

Stored Procedure Funktion
Verwendung in einem Ausdruck
Einen Wert zurückgeben
Werte als OUT zurückgeben Parameter
Rückgabe einer einzelnen Ergebnismenge (als eine Tabellenfunktion)
Mehrere Ergebnismengen zurückgeben

So in den meisten Fällen, ist der Zweck einer gespeicherten Prozedur zu:

  • Aktionen auszuführen, ohne ein Ergebnis zurückzugeben (INSERT-, UPDATE-Operationen i.e.)
  • Einen oder mehrere Einzelwerte als OUT-Parameter zurückgeben
  • Eine oder mehrere Ergebnismengen zurückgeben

Gemeinsam besteht der Zweck einer benutzerdefinierten Funktion darin, die Eingabeparameter zu verarbeiten und einen neuen Wert zurückzugeben.

Berichtstools

Viele Berichtstools (Crystal Reports, Reporting Services, BI-Tools usw.) ermöglichen die Angabe einer Abfrage (SQL SELECT-Anweisung) oder einer gespeicherten Prozedur, die eine Ergebnismenge zurückgibt, um eine Datenmenge für einen Bericht zu definieren.

Stored Procedures sind sehr nützlich, wenn Sie komplexe Berechnungen durchführen müssen, bevor die Daten für einen Bericht verfügbar sind.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.