Re: Locks in functions?
От | Amir Zicherman |
---|---|
Тема | Re: Locks in functions? |
Дата | |
Msg-id | 27a5b7d104081015582e25f520@mail.gmail.com обсуждение исходный текст |
Список | pgsql-general |
sorry, i wrote the funciton wrong. here is what i meant to write: CREATE OR REPLACE FUNCTION public.sample(varchar) RETURNS SETOF record AS ' DECLARE row RECORD; BEGIN LOCK TABLE table1 IN ROW SHARE MODE; FOR urlrow in EXECUTE \'SELECT * FROM "table1"\' LOOP UPDATE "table1" SET col1=5 WHERE "col2"=6 RETURN NEXT row; END LOOP; RETURN; END; ' LANGUAGE 'plpgsql' VOLATILE; thanx, amir On Tue, 10 Aug 2004 15:53:33 -0700, Amir Zicherman <amir.zicherman@gmail.com> wrote: > will locks work inside functions or only in transactions? > > will this lock? .... > > CREATE OR REPLACE FUNCTION public.sample(varchar) > RETURNS SETOF record AS > ' > DECLARE > row RECORD; > BEGIN > LOCK TABLE "URL" IN ROW SHARE MODE; > FOR urlrow in EXECUTE \'SELECT * FROM "table1"\' > LOOP > UPDATE "table1" SET col1=5 WHERE "col2"=6 > RETURN NEXT row; > END LOOP; > RETURN; > END; > ' > LANGUAGE 'plpgsql' VOLATILE; > > thanx, amir >
В списке pgsql-general по дате отправления: