[#] Prosta funkcja PL/pgSQL - testujemy szybkość PostgreSQL

( Ostatnio zmieniony śr., 13/05/2009 - 21:33 )
 

PL/pgSQL jest językiem proceduralnym wspieranym przez RDBMS PostgreSQL. Język ten jest bardzo podobny do języka proceduralnego PL/SQL w bazie Oracle.

PL/pgSQL jest prawdziwym językiem programowania, o znacznie większych możliwościach niż język SQL, umożliwiającym m.in. stosowanie pętli i zaawansowanych struktur sterujących. Programy napisane w języku PL/pgSQL są funkcjami, które można stosować jako część polecenia SQL albo jako wyzwalacz.

Główne zalety języka PL/pgSQL:

– może być używany do tworzenia funkcji i wyzwalaczy,
- dodaje struktury sterujące do języka SQL,
- można wykonywać złożone obliczenia,
- dziedziczy wszystkie typy zdefiniowane przez użytkownika, funkcje i operatory,
- może zostać zdefiniowany jako zaufany dla serwera,
- jest łatwy do użycia.

PL/pgSQL jest jedynym „PL“ instalowanym domyślnie dla PostgreSQL, lecz dostępnych jest wiele innych, takich jak PL/Java, PL/Perl, plPHP, PL/Python, PL/R, PL/Ruby, PL/sh, czy PL/Tcl.

Utworzenie funkcji:

CREATE LANGUAGE "plpgsql";

CREATE FUNCTION test() RETURNS int4 AS '

  DECLARE
    i INTEGER;
  BEGIN
    i:=0;

    LOOP
        IF i > 400000 THEN
      EXIT;
        END IF;
      i:=i+1+1-1;
    END LOOP;
    return i;
  END;
'

Użycie:

LANGUAGE 'plpgsql';
SELECT test();

Usunięcie

DROP FUNCTION test();

źródła:
http://pl.wikipedia.org/wiki/PL/pgSQL
http://www.postgresql.org/…plpgsql.html

Twoja ocena: Brak Średnio: 5 (2 głosy)

Dodaj nową odpowiedź

Informacja:

Osoby zamieszczające wypowiedzi naruszające prawo lub prawem chronione dobra osób trzecich, mogą ponieść z tego tytułu odpowiedzialność karną lub cywilną. Upewnij się, że twoja wypowiedź nie godzi w niczyje mienie.

  • Internal paths in single or double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or path. Paths to files in single or double quotes, written as "files:somefile.ext", for example, are replaced with the appropriate URL that can be used to download the file.
  • Adresy internetowe są automatycznie zamieniane w odnośniki, które można kliknąć.
  • Dozwolone znaczniki HTML: <strong> <blockquote> <code>
  • Znaki końca linii i akapitu dodawane są automatycznie.

Więcej informacji na temat formatowania

Łapirobot
Proszę odpowiedzieć
C
s
6
6
x
F
s
x
v
H
Enter the code without spaces and pay attention to upper/lower case.