Proceduri stocate, funcții și declanșatoare

Procedura stocată este un obiect de bază de date care este un set de instrucțiuni SQL care sunt compilate o dată și stocate pe server.

Funcția stocată diferă de procedura stocată, prin aceea că funcția stocată întoarce întotdeauna numai o scalară (adică o singură valoare), iar procedura returnează un set de valori.







De declanșare (trigger) - este o procedură memorată care nu cauzează în mod direct către utilizator, dar datorită acțiunii ale cărei date de execuție modificare: INSERT plus, ȘTERGE linie de îndepărtare într-un tabel predeterminat, sau schimbarea datelor UPDATE într-un tabel de date relațională coloană particular predeterminată. În PostgreSQL, declanșatoarele sunt create pe baza funcțiilor existente, adică Mai întâi, comanda CREATE FUNCTION definește o funcție de declanșare, apoi comanda CREATE TRIGGER este utilizată pentru a determina declanșatorul propriu-zis. Vizualizați declanșatoarele existente:







Exemplu de funcție (PL / pgSQL), care afișează data curentă

O funcție care returnează mai multe șiruri de caractere

Funcția returnează informații despre timpul ultimului proces de autovacuum, autoanalizează. Returnează coloana de înregistrări.

Declanșează MySQL. Suportul pentru declanșatori este activat, începând cu MySQL 5.0.2.

Un declanșator este o bază de date obiect numit (procedură stocată), care este asociat cu masa, si va fi activat atunci când un anumit eveniment INSERT, UPDATE și DELETE (insera, actualiza sau șterge linii) are loc pentru masa. Declanșatoarele pot declanșa atât înainte, cât și după ce au schimbat masa.

Pentru a șterge un declanșator, trebuie să specificați o schemă

Exemplu de declanșare MySQL

Sarcina. Este necesar să introduceți (INSERT) o linie în tabelul cdr, să actualizați (UPDATE) tabelul de acțiuni cu valoarea id a noii înregistrări a tabelului cdr.

NEW - pentru a accesa noi înregistrări; OLD - pentru a accesa înregistrările vechi







Articole similare

Trimiteți-le prietenilor: