From: | Dennis Gearon <gearond(at)sbcglobal(dot)net> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | use of IN() with literals |
Date: | 2010-05-18 17:05:49 |
Message-ID: | 997364.42783.qm@web82105.mail.mud.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
I'm trying to use the following script: (to give command line ability to change grant on all tables in public in a database)
psql -t -c “SELECT ‘GRANT $1 ON public.’ || t.relname || ‘ TO $2;’ from pg_class t, pg_namespace s WHERE t.relkind IN (‘r’, ‘v’, ‘S’) AND t.relnamespace=s.oid AND s.nspname=’public’;” $3 | psql $3
and it always fails at the "IN(‘r’, ‘v’, ‘S’)" part. psql won't accept the literals in the IN clause. Is this normal? What could fix this?
I've tried just doing:
(
after logging in to psql connected to a specific database)
select * from pg_class where relkind IN IN (‘r’, ‘v’, ‘S’);
and that doesn't work either.
Dennis Gearon
Signature Warning
----------------
EARTH has a Right To Life,
otherwise we all die.
Read 'Hot, Flat, and Crowded'
Laugh at http://www.yert.com/film.php
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Kellerer | 2010-05-18 17:25:21 | Re: use of IN() with literals |
Previous Message | akp geek | 2010-05-18 16:32:09 | Re: pg_restore to log file |