I'm writing a trigger procedure in C to catch updates to a table and write them to a log file. The function must walk along trigdata->tg_trigtuple pulling out the attributes, comparing them with those in trigdata->tg_newtuple and writing the diffs to a flat ASCII file. I've got a loop over the attributes, and I can get the values if I know the type, eg Datum d = heap_getattr( trigdata->tg_trigtuple, ... int32_t val = DatumGetInt32( d); but I'm struggling to find how the function can determine the attribute types. I'm only using the built-in scalar types. Do I have to query the system catalogs? Or maybe there's a function that works from a TupleDesc? -- Paul Nicholson -- -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general