Proceduri și funcții stocate în PostgreSQL – Noțiuni introductive

O procedură stocată și o funcție definită de utilizator (UDF) este un set de instrucțiuni SQL și procedurale (declarații, atribuiri, bucle, fluxuri de control etc.) care sunt stocate pe serverul de baze de date și pot fi invocate folosind interfața SQL.

Exemplu rapid:

În PostgreSQL, atât procedurile stocate, cât și funcțiile definite de utilizator sunt create cu instrucțiunea CREATE FUNCTION. Există diferențe între noțiunea de proceduri stocate și cea de funcții în sistemele de baze de date:

Procedura stocată Funcție
Utilizarea într-o expresie .
Returnează o valoare
Returnează valorile ca OUT parametri
Returnează un singur set de rezultate (sub formă de table function)
Returnează mai multe seturi de rezultate

Deci, în majoritatea cazurilor, scopul unei proceduri stocate este acela de a:

  • Efectuarea de acțiuni fără a returna niciun rezultat (operații INSERT, UPDATE i.e.)
  • Să returneze una sau mai multe valori scalare ca parametri OUT
  • Să returneze unul sau mai multe seturi de rezultate

De obicei, scopul unei funcții definite de utilizator este de a procesa parametrii de intrare și de a returna o nouă valoare.

Instrumente de raportare

Multe instrumente de raportare (Crystal Reports, Reporting Services, instrumente BI etc.) vă permit să specificați o interogare (instrucțiune SQL SELECT) sau o procedură stocată care returnează un set de rezultate pentru a defini un set de date pentru un raport.

Procedurile stocate sunt foarte utile atunci când trebuie să efectuați calcule complexe înainte ca datele să fie disponibile pentru un raport.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.