sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan FETCH ved hjælp af værdien af ​​en Refcursor-variabel

For at navngive markøren skal du blot tildele en streng til refcursor variabel:

DECLARE
    ref refcursor := ''willi'';

Så vil portalen have det navn.

Det er vigtigt, at du tildeler navnet før du åbner markøren.

Hvis du ikke ønsker at tildele navnet, skal du blot caste funktionsresultatet til text , der vil give dig markørens navn.

Sådan bruger du FETCH afhænger af miljøet, hvor du kalder det:

  • Hvis du kalder det fra SQL, skal du gøre det sådan her:

    FETCH ALL FROM willi;
    

    Du bliver nødt til at konstruere SQL-sætningen ved hjælp af resultatet fra funktionen, cast til text .

  • Hvis du kalder det fra PL/pgSQL, kan du bruge en variabel i FETCH erklæring, men du skal angive en destination for resultatet:

    DECLARE
       r refcursor;
       x text;  -- use the correct type
    BEGIN
       r := reffunc2();
       FETCH NEXT FROM r INTO x;
    END;
    



  1. Indsæt hvis det ikke findes, ellers returner id i postgresql

  2. Hent billede fra databasen i asp.net

  3. Brug af local.js til at gemme sails-mysql adgangskode

  4. PHP MYSQL importer CSV og sammenlign og fjern overflødige poster