PL/PgSQL
PL/pgSQL (Procedural Language/PostgreSQL Structured Query Language) on PostgreSQL - tietokannan hallinnan tarjoama pakollinen kieli . Se mahdollistaa SQL-komentojen suorittamisen pakottavien lauseiden kielellä ja funktioiden käytön, mikä antaa paljon enemmän automaattista ohjausta kuin perusSQL-käskyt.
PL/pgSQL:stä voit suorittaa monimutkaisia laskelmia ja luoda uusia käyttäjätietotyyppejä. Todellisena ohjelmointikielenä siinä on toistuvia ja ehdollisia ohjausrakenteita sekä mahdollisuus luoda toimintoja, joita voidaan kutsua normaaleissa SQL-käskyissä tai suorittaa liipaisutapahtumissa .
Yksi tärkeimmistä eduista ohjelmoinnin suorittamisessa tietokantapalvelimella on, että kyselyitä ja tuloksia ei tarvitse kuljettaa asiakkaan ja palvelimen välillä , koska tiedot sijaitsevat itse palvelimella. Lisäksi tietokannan hallinta voi suunnitella optimointeja tiedonhaun ja päivityksen suorittamisessa.
PL/pgSQL:llä kirjoitetut funktiot hyväksyvät argumentteja ja voivat palauttaa perus- tai kompleksityyppisiä arvoja (esimerkiksi tietueita, vektoreita, joukkoja tai jopa taulukoita), mikä mahdollistaa abstraktien tai yleisten funktioiden polymorfisen kirjoittamisen (viittaus tyypin objektin muuttujiin ) .
Esimerkki PL/pgSQL-koodista
LUO TAI KORVAA FUNCTION call_not_interested(integer) PALAUTTAA kokonaisluvun AS JULISTAA _call_id ALIAS FOR 1 $; _contact_id kokonaisluku; ALKAA -- etsi asiaan liittyvä yhteystieto SELECT _contact_id INTO _contact_id FROM puhelut WHERE id = _call_id; -- päivitä vastatut puhelut UPDATE puhelut SET osallistui = tosi WHERE id = _puhelun_tunnus; -- päivitä yhteystietoihin ei_interested PÄIVITYS yhteystiedot SET not_interested = true WHERE id = _contact_id; RETURN _contact_id; END; '
Ulkoiset linkit
- PL/ pgSQL PostgreSQL-oppaassa