On Sun, 2004-07-18 at 20:52, Randall Perry wrote: > This is a pain. Couldn't we gave something simple like > GRANT ALL ON database.* TO JOE; > > Which would grant full access to all objects in the database to JOE for all > time?
You can do it like this in psql: \a \t \o /tmp/grant.sql SELECT 'GRANT ALL ON ' || n.nspname || '.' || c.relname || ' TO joe;' FROM pg_catalog.pg_class AS c LEFT JOIN pg_catalog.pg_namespace AS n ON n.oid = c.relnamespace WHERE c.relkind IN ('r','v','S') AND n.nspname NOT IN ('pg_catalog', 'pg_toast') AND pg_catalog.pg_table_is_visible(c.oid) ORDER BY n.nspname, c.relname; \o \i /tmp/grant.sql The above could be put in a script and run from a Unix command prompt. (The SQL used above is adaated from that used by psql's \d command.) -- Oliver Elphick [EMAIL PROTECTED] Isle of Wight http://www.lfix.co.uk/oliver GPG: 1024D/A54310EA 92C8 39E7 280E 3631 3F0E 1EC0 5664 7A2F A543 10EA ======================================== "For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life." John 3:16 ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly