Received: from localhost (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id 22DE7634349 for ; Wed, 4 Mar 2009 16:25:02 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 37883-03 for ; Wed, 4 Mar 2009 16:24:57 -0400 (AST) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by mail.postgresql.org (Postfix) with SMTP id 2EC646340E7 for ; Wed, 4 Mar 2009 16:24:56 -0400 (AST) Received: (qmail 14742 invoked by uid 0); 4 Mar 2009 17:38:15 -0000 Received: from 192.124.237.8 by www115.gmx.net with HTTP; Wed, 04 Mar 2009 18:38:15 +0100 (CET) Cc: pgsql-admin@postgresql.org Content-Type: text/plain; charset="iso-8859-1" Date: Wed, 04 Mar 2009 18:38:15 +0100 From: Jan-Peter.Seifert@gmx.de In-Reply-To: <49ABE46D.3000501@synechron.com> Message-ID: <20090304173815.4090@gmx.net> MIME-Version: 1.0 References: <20090302122020.137490@gmx.net> <49ABE46D.3000501@synechron.com> Subject: Re: getting 'full' names of functions? To: Ashish Karalkar X-Authenticated: #955937 X-Flags: 0001 X-Mailer: WWW-Mail 6100 (Global Message Exchange) X-Priority: 3 X-Provags-ID: V01U2FsdGVkX1/texVEUpftn1ZqhOOgmn+l+fxCZmIsH9rcH3k2Mb t3yduuk8WQ8b6IvV2vCipUr51qySzQKrkIdw== Content-Transfer-Encoding: 8bit X-GMX-UID: v46dffNIX1V6EhX7YmFywxF/SDc4NEz7 X-FuHaFi: 0.61 X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200903/50 X-Sequence-Number: 31550 Hello Ashish, Hello Tom, > > before I reinvent the wheel I'd like to know whether there's a shortcut > for getting the 'full' name (incl. argtypes) of the functions within a > database in order to REVOKE priviliges on them given to certain users. I combined your suggestions into this query I'll be using for now: SELECT DISTINCT n.nspname || '.' || p.oid::regprocedure::text FROM pg_catalog.pg_proc p LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace WHERE pg_catalog.pg_function_is_visible(p.oid) AND nspname !~* '^pg_' AND nspname != 'information_schema'; Thank you very much again, Peter -- Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger01