Re: Using a composite SQL type in C - Mailing list pgsql-general

From Toby Chavez
Subject Re: Using a composite SQL type in C
Date
Msg-id a2987f9e0805081011g12cdd67dn2e49a6e3f621e4df@mail.gmail.com
Whole thread Raw
In response to Using a composite SQL type in C  ("Dan \"Heron\" Myers" <heron@xnapid.com>)
Responses Re: Using a composite SQL type in C  (Dan Myers <heron@xnapid.com>)
List pgsql-general

Check the documentation about using composite-type arguments in C http://www.postgresql.org/docs/8.2/static/xfunc-c.html#AEN37402

You can use GetAttributeByNum() or GetAttributeByName() to get each value from your custom type. You will need to get the HeapTupleHeader first by calling PG_GETARG_HEAPTUPLEHEADER(). A quick google search brought up this tutorial that might help http://linuxgazette.net/142/peterson.html

Cheers


My problem is, how do I access this type in my function (in C), and how do I create a new object of this type to return from the function?  I need to store both a text and an int, to avoid doing an extra query around the result of this aggregate (to get the corresponding text value), which is what I'm currently doing.  Any ideas?


 

pgsql-general by date:

Previous
From: Shane Ambler
Date:
Subject: Re: Problems with memory
Next
From: Magnus Hagander
Date:
Subject: Re: statistics collector process is thrashing my cpu