Skip site navigation (1) Skip section navigation (2)

Re: Grant SELECT on all tables of a database

From: Marsha Ramsey <msramsey22(at)yahoo(dot)com>
To: Oliver Elphick <olly(at)lfix(dot)co(dot)uk>, pgsql-admin(at)postgresql(dot)org
Subject: Re: Grant SELECT on all tables of a database
Date: 2007-05-29 20:03:44
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-admin
This does the JOB...thank you very much!!!! 

Oliver Elphick <olly(at)lfix(dot)co(dot)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
        \o /tmp/sqlscript
        SELECT 'GRANT SELECT ON '  || schemaname || '.' || tablename ||
        ' TO PUBLIC ;'
          FROM pg_tables
          WHERE tableowner = CURRENT_USER;
        \i /tmp/sqlscript
Oliver Elphick                                          olly(at)lfix(dot)co(dot)uk
Isle of Wight                    
GPG: 1024D/A54310EA  92C8 39E7 280E 3631 3F0E  1EC0 5664 7A2F A543 10EA
   Do you want to know God?

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

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

In response to

pgsql-admin by date

Next:From: Keaton AdamsDate: 2007-05-29 20:42:13
Subject: ALTER TABLE - ALTER COLUMN question
Previous:From: Oliver ElphickDate: 2007-05-29 19:51:42
Subject: Re: Grant SELECT on all tables of a database

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group