Tom Lane writes:
> I have just been scanning some of the original Postgres papers
> (in an unsuccessful search to find out how one uses "set" attributes;
> anyone know?)
I've been playing around with that a while ago in the hope that this would
explain this table-as-datatype thing but several findings led me to
believe that this is long dead, removed, rotten code:
* SET uses textin/textout
* no functions defined with SET arguments or return values,
pg_proc.proretset is false for all rows
* the only entry point for defining sets is in parser/parser.c, which is
fittingly marked #ifdef SETS_FIXED
The function SetDefine in utils/adt/sets.c makes me think that a SET is
more or less a stored procedure without arguments. That is, you would
define some SET type in terms of a query from another table and then you
could use predicates like `value in set'. The syntax for this must have
gotten lost in the PostQUEL to SQL switch. All in all there's not much to
rescue from there, I believe.
--
Peter Eisentraut Sernanders väg 10:115
peter_e@gmx.net 75262 Uppsala
http://yi.org/peter-e/ Sweden