Search Postgresql Archives

Re: best way to reference tables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 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

My tables are a subset of all the tables - I'm not trying to keep track of everything!
So, I think I'll create a schema for the tables I need to keep track of, and create
some procedures to properly create/modify tables therein.  I don't need to
keep track of all the innards of each table - ADD COLUMN, etc.

I guess what I'm asking is: Is there a better way to keep track of a table once
it's registered in my master table than just to put its name in my master table?
Some system oid type thing that stays fixed in spite of renames or other
tables mods?

TJ



---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux