1

Temat: funkcja z loop

hej, jak przekazać 'i' z pętli od insert'a:

create or replace function zwieksz() return void as
$$
begin
for i in 8..16 LOOP
   insert into petla values (now() + interval 'i minute');
end loop;
end;
$$
language 'plpgsql';

Ostatnio edytowany przez pawmar (2011-04-11 22:59:57)

2

Odp: funkcja z loop

W tym przypadku chyba bedziesz musial uzyc dymanicznego sql

execute 'insert into petla values (now() + interval '''||i||' minute'')';

3

Odp: funkcja z loop

Można też zrobić to tak :

for i in 8..16 LOOP
   insert into petla values (now()  + CAST(i || 'minute' AS INTERVAL));
end loop;

4

Odp: funkcja z loop

Dzięki, oba sposoby działają.

Znacie jakieś ciekawe tutoriale, z których można się nauczyć pisania funkcji w postgresie, bo w dokumentacji to za dużo wyjaśnień nie ma.

5

Odp: funkcja z loop

trzeba chyba operać sie na własnym doświadczeniu i doświadczeniu innych (na przykład zadając pytania na forach smile )

6

Odp: funkcja z loop

kiedy należy używać 'execute' ?

7

Odp: funkcja z loop

Jak najrzadziej smile
Ale przyda Ci się gdy na przykład bedziesz pobierał/zmienial dane z/w tabeli i nazwa tabeli będzie parametryzowana.