Re: Error near delete in plpgsql function
От | Tom Lane |
---|---|
Тема | Re: Error near delete in plpgsql function |
Дата | |
Msg-id | 7994.1307377014@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Error near delete in plpgsql function (Saqib Ilyas <msaqib@gmail.com>) |
Список | pgsql-novice |
Saqib Ilyas <msaqib@gmail.com> writes: > Hi folks > I have the following function in a file called deletescript.sql. > CREATE OR REPLACE FUNCTION delete_items() RETURNS integer AS ' > DECLARE > m RECORD; > n RECORD; > BEGIN > FOR m in SELECT item_id from ITEM where owning_colletion=37 LOOP > FOR n in SELECT workflow_id from workflowitem where collection_id=37 > and item_id=m.item_id LOOP > delete from tasklistitem where workflow_id=n.workflow_id; > END LOOP > delete from workflowitem where collection_id=37 and > item_id=m.item_id; > END LOOP; > delete from item where owning_collection=37; > return 1; > END; > ' LANGUAGE plpgsql; > I started psql and loaded the script using \i deletescript.sql. Then I > called the function using select delete_items(); I get the following error: > ERROR: syntax error at or near "delete" > CONTEXT: compile of PL/pgSQL function "delete_items" near line 9 > ERROR: syntax error at or near "delete" > CONTEXT: compile of PL/pgSQL function "delete_items" near line 9 > Any idea why this happened? You forgot to put a semicolon after the first END LOOP. regards, tom lane
В списке pgsql-novice по дате отправления: