Co je to anonymní blok ?
Anonymní blok obecně ve všech databázích je obdoba uložené procedúry, která se ovšem neukládá do databáze, ale slouží na to, že se přímo spustí. Na co slouží :
a. Je potřeba udělat nějakou operaci nad daty, který vyžaduje PLSQL jazyk, nebo jiný (python) …
b. Je potřeba odladit nějakou větší proceduru
c. Nejste příznivcem uložených procedúr a raději si bastlíte v php, nebo jiném jazyku
Můj první anonymní blok
DO $$
DECLARE
BEGIN
drop table if exists _vysledek;
create temporary table _vysledek (txt text);
insert into _vysledek (txt) values ('Můj první pokus !');
END;
$$;
select * from _vysledek;
Výstup je :
txt ------------------ Můj první pokus ! (1. řádka)
Co by Jste mněli vědět ?
Na rozdíl od Oraclu jsem v PostgreSQL nenašel session proměnné. Takže když potřebujete dělat výstup z anonymního bloku doporučuji použít temporary tabulku jak sem uvedel v příkladu.
To je vše. :)