Create user or role from inside a function?
| От | Dan |
|---|---|
| Тема | Create user or role from inside a function? |
| Дата | |
| Msg-id | 39844.203.143.226.132.1157105594.squirrel@secure.x32i.net обсуждение исходный текст |
| Ответы |
Re: Create user or role from inside a function?
Re: Create user or role from inside a function? Re: Create user or role from inside a function? Re: Create user or role from inside a function? |
| Список | pgsql-general |
Hey,
I am running PostgreSQL 8.1.4 and I want to create a user from inside a
function. Is this possible in 8.1?
Ive found quite a few references on google using EXECUTE, but this seems
relevant to earlier versions, not 8.1.
I have a function like this:
CREATE FUNCTION user_create (un varchar, uid bigint, pw varchar) RETURNS
VARCHAR LANGUAGE plpgsql AS '
BEGIN
EXECUTE "CREATE USER " || un || " WITH PASSWORD " || pw;
RETURN un;
END
';
Executing this function yields:
# SELECT user_create('bob',1234,'bobspassword');
ERROR: column "CREATE USER " does not exist
CONTEXT: SQL statement "SELECT "CREATE USER " || $1 || " WITH PASSWORD
" || $2 "
PL/pgSQL function "user_create" line 2 at execute statement
Directly executing CREATE USER in this function also fails.. CREATE USER
$1 appears to be what is being executed.
Any tips would be appreciated.
Cheers,
Dan
В списке pgsql-general по дате отправления: