Oli Sennhauser <[EMAIL PROTECTED]> writes: >> You need to use EXECUTE to construct this query as a string.
> Facit: pgplsql does not work for my problem, execute does not work problem. I didn't think I would have to spell it out in gory detail ... regression=# create or replace function cruser(text) returns void as ' regression'# begin regression'# execute ''CREATE USER '' || quote_ident($1); regression'# return; regression'# end' language plpgsql; CREATE FUNCTION regression=# select cruser('foo'); cruser -------- (1 row) regression=# select cruser('bar'); cruser -------- (1 row) regression=# select usename from pg_user; usename ----------------------- postgres pleb foo bar (5 rows) regression=# regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend