Thread: Grant SELECT on all tables of a database

Grant SELECT on all tables of a database

From
Marsha Ramsey
Date:
Hello all,

How do I GRANT SELECT to all my tables at once?  I have over 1026 tables in this database...

Thanks...Marsha


It's here! Your new message!
Get new email alerts with the free Yahoo! Toolbar.

Re: Grant SELECT on all tables of a database

From
Oliver Elphick
Date:
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


Re: Grant SELECT on all tables of a database

From
Marsha Ramsey
Date:
This does the JOB...thank you very much!!!!

Oliver Elphick <olly@lfix.co.uk> wrote:
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


---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend


Looking for a deal? Find great prices on flights and hotels with Yahoo! FareChase.