Обсуждение: How to get OID return value(pls help me)
Hi......
My table consists of oid and varchar datatypes.
I want to get the oid type from the table and i need to pass it to a function which accepts only the oid data type.
But my problem is the return value of the datatype i am getting from the query result is char*.
Is there any function in postgresql which gives the return value of the executed query as OID type.
Please explain me what to do inorder to get the Oid type
When i used PQoidValue(res).It is giving 0.
Also in document they mention something related to INSERT query only.
But i want it for select query.
Thank you,
Regards,
Sandhya
On Thu, Dec 22, 2005 at 11:05:22AM +0530, sandhya wrote: > My table consists of oid and varchar datatypes. > I want to get the oid type from the table and i need to pass it to > a function which accepts only the oid data type. What function is that? What does it do with the oid? > But my problem is the return value of the datatype i am getting from > the query result is char*. You don't mention what language and interface you're using but it sounds like C and libpq. > Is there any function in postgresql which gives the return value of > the executed query as OID type. You could rely on the knowledge that Oid is typedef unsigned int Oid; and use strtoul() to convert the char * to an unsigned int. Another way, if you're using 7.4 or later, would be to issue the query with PQexecParams() and request binary results. I think you'll have to deal with byte order issues in that case. This is off-topic for pgsql-admin; pgsql-interfaces or pgsql-general would be more appropriate. -- Michael Fuhr