From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Michal Taborsky <M(dot)Taborsky(at)sh(dot)cvut(dot)cz> |
Cc: | Bugs for PostgreSQL <pgsql-bugs(at)postgreSQL(dot)org>, Jan Wieck <JanWieck(at)Yahoo(dot)com> |
Subject: | Re: [GENERAL] CREATE USER within function |
Date: | 2003-04-15 00:04:58 |
Message-ID: | 200304150004.h3F04wg23848@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-general |
Jan, would you take a look at this? It is reproducable. I see the
query sending "CREATE USER $1 ..." in the server logs.
---------------------------------------------------------------------------
Michal Taborsky wrote:
> Hi,
>
> I am facing a problem. I am unable to call CREATE USER from within a
> PL/PgSQL function. I am using Postgres 7.3.2.
>
> The function looks like this (it is more complex in fact, but even if
> stripped to this, it does not work anyway):
>
> CREATE OR REPLACE FUNCTION
> usr_createAccount(integer, name, text, text, bool, bool)
> RETURNS bool AS '
> BEGIN
> CREATE USER $2 WITH PASSWORD $3 NOCREATEDB CREATEUSER IN GROUP "all",
> "super";
> RETURN true;
> END;
> ' LANGUAGE 'plpgsql';
>
> I keep getting this:
>
> akcent=# select usr_createAccount(3, 'username', 'somepassword', 'cs',
> true, false);
> WARNING: Error occurred while executing PL/pgSQL function usr_createaccount
> WARNING: line 2 at SQL statement
> ERROR: parser: parse error at or near "$1" at character 14
>
> I am a bit confused by this error, because there is no "$1" string in
> this function. I tried to do a CREATE USER in transaction, because I
> suspected it to be the problem, but it worked just fine. Does anyone see
> something which I don't ? What am I doing wrong ?
>
> Thanks,
> Michal
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faqs/FAQ.html
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | Tatsuo Ishii | 2003-04-15 02:25:09 | Re: [HACKERS] Bug #943: Server-Encoding from EUC_TW to |
Previous Message | Ennio-Sr | 2003-04-14 15:26:59 | Re: Psql 'Expanded display (\x)' behaviour |
From | Date | Subject | |
---|---|---|---|
Next Message | Gavin Sherry | 2003-04-15 00:18:59 | Re: Are we losing momentum? |
Previous Message | Tom Lane | 2003-04-14 23:54:27 | Re: Are we losing momentum? |