pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Achilleus Mantzios <achill@matrix.gatewaynet.com>
To: Giulio Orsero <giulioo@pobox.com>
Cc: pgsql-sql@postgresql.org
Subject: Re: Drop all indexes of a table w/o knowing the index names
Date: Tue, 9 Nov 2004 17:30:25 +0200 (EET)
Message-ID: <Pine.LNX.4.44.0411091727100.4167-100000@matrix.gatewaynet.com> (raw)
In-Reply-To: <20041109144039.1B2D313346@mail.golden.dom>

O Giulio Orsero Ýãñáøå óôéò Nov 9, 2004 :

> 7.4.6 on Linux.
> 
> I need a way to drop all indexes of a table without knowing the names of the
> indexes.
> 
> Say I have a table
> 
> table1
> 	index1
> 	index2
> 	index3
> 
> I don't want to do
> 
> drop index1;
> drop index2;
> drop index3;
> 
> but I want
> 
> drop <all indexes of table table1>

if your are using default namespace (schema)
% tcsh

% foreach i ( `psql -t -q -c "SELECT ci.relname from pg_index i,pg_class 
ci,pg_class ct where i.indexrelid=ci.oid and i.indrelid=ct.oid and 
ct.relname='YOUR_TABLE_HERE'"` )
foreach? psql -c "drop index $i" 
foreach? end

> 
> is this possible? I looked in the manual at pg_index, but couldn't build an
> sql string to do it.
> 
> Thanks
> 
> 

-- 
-Achilleus




view thread (3+ messages)  latest in thread

Message-ID: <Pine.LNX.4.44.0411091727100.4167-100000@matrix.gatewaynet.com>
Permalink:  ../Pine.LNX.4.44.0411091727100.4167-100000@matrix.gatewaynet.com/
Also on:    postgresql.org/message-id/Pine.LNX.4.44.0411091727100.4167-100000@matrix.gatewaynet.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: achill@matrix.gatewaynet.com, giulioo@pobox.com
  Subject: Re: Drop all indexes of a table w/o knowing the index names
  In-Reply-To: <Pine.LNX.4.44.0411091727100.4167-100000@matrix.gatewaynet.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox