PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да FETCH използваме стойността на променлива Refcursor

За да именувате курсора, просто присвоете низ към refcursor променлива:

DECLARE
    ref refcursor := ''willi'';

Тогава порталът ще има това име.

Важно е да зададете името преди отваряте курсора.

Ако не искате да присвоите името, просто преобразувайте резултата от функцията в text , което ще ви даде името на курсора.

Как да използвате FETCH зависи от средата, в която го наричате:

  • Ако го извикате от SQL, трябва да го направите по следния начин:

    FETCH ALL FROM willi;
    

    Ще трябва да конструирате SQL израза, като използвате резултата от функцията, преобразувана в text .

  • Ако го извикате от PL/pgSQL, можете да използвате променлива в FETCH оператор, но трябва да предоставите дестинация за резултата:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Референтен псевдоним в клаузата WHERE

  2. ГРЕШКА:релация места не съществува Импортиране на Heroku db

  3. Npgsql:Старото представяне с плаваща запетая за времеви клейма не се поддържа

  4. SQL заявка за избор на двойки стойности в колона 1, които съответстват на един от двата модела в колона 2

  5. Избиране на масиви в добре отпечатан формат в SQL