Re: DO like block for for anonymous procedures - Mailing list pgsql-general

From Vijaykumar Jain
Subject Re: DO like block for for anonymous procedures
Date
Msg-id CAM+6J95tHgCRpLvRe4EMG7UEhinTgZ7i8etda=jn_Lx4fsYpUQ@mail.gmail.com
Whole thread Raw
In response to DO like block for for anonymous procedures  (Vijaykumar Jain <vijaykumarjain.github@gmail.com>)
List pgsql-general

please ignore, i overlooked the obvious.

truncate table t;
TRUNCATE TABLE
postgres=# do $$
declare valuelist int[] := ARRAY[1,2,3,4,5,1]; -- purposely inserting duplicate that would rollback everything
declare i int;
begin
for i in select k from unnest(valuelist) p(k) loop
insert into t values(i);
raise notice 'trying to insert %', i; commit;
end loop;
end; $$;
NOTICE:  trying to insert 1
NOTICE:  trying to insert 2
NOTICE:  trying to insert 3
NOTICE:  trying to insert 4
NOTICE:  trying to insert 5
ERROR:  duplicate key value violates unique constraint "t_pkey"
DETAIL:  Key (id)=(1) already exists.
CONTEXT:  SQL statement "insert into t values(i)"
PL/pgSQL function inline_code_block line 6 at SQL statement
postgres=# table t;
 id
----
  1
  2
  3
  4
  5
(5 rows)


sorry.

pgsql-general by date:

Previous
From: Vijaykumar Jain
Date:
Subject: DO like block for for anonymous procedures
Next
From: Matthias Apitz
Date:
Subject: Re: PostgreSQL reference coffee mug