From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | tjo(at)acm(dot)org |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: best way to reference tables |
Date: | 2005-08-09 14:54:38 |
Message-ID: | 42F8C3AE.50903@archonet.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
TJ O'Donnell wrote:
> I have many different tables that I want to keep track of.
> So, I thought of a master table with those table names in it.
> But, to maintain this (suppose a table changes
> its name, gets dropped) I want to have some kind of referential
> integrity - the way foreign keys and constraints do.
> What could I use that would disallow inserting a name into
> the master table unless another table by that name already exists?
> And what could ensure that a table would not be renamed or dropped
> unless the master table is changed?
You can write your own triggers that would stop you from adding a
non-existent table to your master-table. You can't fire triggers on
changes to system tables though, so you can't stop someone adding a table.
In any case, you presumably want to track ALTER TABLE ADD COLUMN too so
you'll need something a little smarter.
Have you considered "pg_dump --schema-only" along with suitable
version-control software (CVS/Subversion/Arch etc)? Or are you trying to
track something specific?
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2005-08-09 15:02:47 | Re: Case sensitivity |
Previous Message | Sean Davis | 2005-08-09 14:52:32 | Re: best way to reference tables |