Anropa en lagrad procedur i Azure Database for PostgreSQL

Slutförd

Om du vill anropa en lagrad procedur använder du nyckelordet CALL. Alla definierade indataparametrar måste skickas till den lagrade proceduren, såvida inte parametern definieras med ett standardvärde.

Den lagrade proceduren myprocedure gör det till exempel enklare att infoga data i en tabell.

CALL insert_data (1, 2);

I det här exemplet används myprocedure för att infoga bara två värden i en tabell. Eftersom tabellstrukturen blir mer komplicerad, och du vill inkludera felkontroll, skulle brödtexten i den lagrade proceduren vara mer komplicerad. Men användarens anrop skulle fortfarande bara behöva skicka de obligatoriska parametrarna. På så sätt döljs all komplexitet från användaren, vilket gör infogningsproceduren enklare.

För lagrade procedurer med många indataparametrar kan du ange namnet på parametern för att göra koden enklare att läsa och minska fel. Syntax:

name => value

Till exempel:

CALL new_exhibit
    (
        prm_enc_id => 21,
        prm_enclosure => 'West Enclosure',
        prm_number_of_animals => 5,
        prm_animal_name => 'Lemur',
        prm_weight_kg => 5.0,
        prm_cat_id => 8
    );