Re: Grant SELECT on all tables of a database - Mailing list pgsql-admin

From Oliver Elphick
Subject Re: Grant SELECT on all tables of a database
Date
Msg-id 1180468302.15764.31.camel@linda.lfix.co.uk
Whole thread Raw
In response to Grant SELECT on all tables of a database  (Marsha Ramsey <msramsey22@yahoo.com>)
Responses Re: Grant SELECT on all tables of a database
List pgsql-admin
On Tue, 2007-05-29 at 10:21 -0700, Marsha Ramsey wrote:
> Hello all,
>
> How do I GRANT SELECT to all my tables at once?  I have over 1026
> tables in this database...

I don't think there is any direct SQL command to do it. But try this:

psql -d your_database
        \t
        \a
        \o /tmp/sqlscript
        SELECT 'GRANT SELECT ON '  || schemaname || '.' || tablename ||
        ' TO PUBLIC ;'
          FROM pg_tables
          WHERE tableowner = CURRENT_USER;
        \o
        \i /tmp/sqlscript

--
Oliver Elphick                                          olly@lfix.co.uk
Isle of Wight                              http://www.lfix.co.uk/oliver
GPG: 1024D/A54310EA  92C8 39E7 280E 3631 3F0E  1EC0 5664 7A2F A543 10EA
                 ========================================
   Do you want to know God?   http://www.lfix.co.uk/knowing_god.html


pgsql-admin by date:

Previous
From: Marsha Ramsey
Date:
Subject: Grant SELECT on all tables of a database
Next
From: Marsha Ramsey
Date:
Subject: Re: Grant SELECT on all tables of a database