Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

references (foreign keys) and selection lists


  • From: Toshio Kuratomi <badger(at)prtr-13(dot)ucsc(dot)edu>
  • To: pgsql-php(at)postgresql(dot)org
  • Subject: references (foreign keys) and selection lists
  • Date: Thu, 14 Dec 2000 17:53:18 -0800
  • Message-id: <20001214175318.C20751@prtr-13.ucsc.edu> <text/plain>

Hi,
In my database I have several references between tables.
When webifying an insert form it seemed to me that these
would best be represented as a selection list.

Currently I'm using this:

SQL: select t.tgargs from pg_class c, pg_trigger 
     where t.tgrelid = c.oid and c.relname='mytable';
  returns values like this:
  "<unnamed>\000mytable\000myothertable\000UNSPECIFIED\000type\000category\000"
PHP: record = split on '\000';
   	 when record[1] matches mytable:
	 [If it doesn't match mytable, then this table is being referenced as
	 opposed to referencing]
SQL: select record[5] from record[2];
PHP: construct selection list from the returned list

Question:  Is \000 an official separator between targs fields or is
000 part of a number that may change for some reason?

Also -- is this the best way to solve my problem?  It seems a little
inelegant to perform the middle split and match in the calling script, but I
can't figure out how to do it in SQL (tgargs is type bytea which doesn't
respond to regex operators.... What is a bytea anyhow?)

Last question -- Is there any documentation of the system tables (pg_*)?
I've found several useful fields in several tables, but I'm far from
understanding most of what's in there.

Thanks,
Toshio
-- 
badger  \ "I sometimes wonder: where is it all going?
@prtr-13 \  Which makes me stop to wonder: what is it?"
.ucsc.edu \~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
                                           GA->ME 1999



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group