Docs say: Only the database owner or a superuser can rename a database;
non-superuser owners must also have the CREATEDB privilege.

Looks like a superuser must have CREATEDB too:

[EMAIL PROTECTED] SELECT usesuper, usecreatedb from pg_user where usename = 
'fduch';
 usesuper | usecreatedb
----------+-------------
 t        | f
(1 row)

[EMAIL PROTECTED] CREATE DATABASE test owner stat;
CREATE DATABASE
[EMAIL PROTECTED] ALTER DATABASE test RENAME TO work;
ERROR:  permission denied to rename database
[EMAIL PROTECTED] ALTER DATABASE test OWNER TO fduch ;
ALTER DATABASE
[EMAIL PROTECTED] ALTER DATABASE test RENAME TO work;
ERROR:  permission denied to rename database

At last:
[EMAIL PROTECTED] ALTER USER fduch CREATEDB ;
ALTER USER
[EMAIL PROTECTED] ALTER DATABASE test RENAME TO work;
ALTER DATABASE
[EMAIL PROTECTED] ALTER DATABASE work OWNER TO stat;
ALTER DATABASE
[EMAIL PROTECTED] ALTER DATABASE work RENAME TO test;
ALTER DATABASE

PostgreSQL 8.0.1 on i386-portbld-freebsd5.3, compiled by GCC cc (GCC) 3.4.2 
[FreeBSD] 20040728


-- 
Fduch M. Pravking

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

Reply via email to