PQexecParams-Problem

Started by Mavinakuli, Prasanna (STSD)over 20 years ago2 messagesgeneral
Jump to latest

Hi,

Problem Description:

We need to insert binary data to tables and retrieve the
Same-(data type is bytea).
We are using PQExecParams for inserting and retrieving
Data.
Table contains other than binary data also.

When we tried to fetch the integer data (type-int2)
We are not able to get anything from that result set(alws value is
zero).but Pqexec returns the desired value

Questions:

1)how can we get the integer value from the result set which is got from
executing PQexecParams;
(the sample code is given below)

2)if it's not possible then how can we get the BINARY values using
Pqexec

Here is the code snapshot:

string query="select intval from dummy where intval=7;";

res1=PQexecParams(conn,query.c_str(),0,NULL,NULL,NULL,NULL,1);
for(unsigned char i=0;i<4;i++)
{
printf("%d \n",(PQgetvalue(res1,0,0)[i]));
//prints 0000 here
}

cout<<"value from pqexec params
****"<<atoi(PQgetvalue(res1,0,0))<<endl; //prints 0 here

cout<<"using pqexec ***"<<endl;
res1=PQexec(conn,"select intval from dummy where
intval=7;");//prints 7 below.
cout<<"value from pqexec
**"<<atoi(PQgetvalue(res1,0,0))<<endl;

Prasanna.

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Mavinakuli, Prasanna (STSD) (#1)
Re: PQexecParams-Problem

"Mavinakuli, Prasanna (STSD)" <prasanna.b-m@hp.com> writes:

Here is the code snapshot:
string query="select intval from dummy where intval=7;";

res1=PQexecParams(conn,query.c_str(),0,NULL,NULL,NULL,NULL,1);
for(unsigned char i=0;i<4;i++)
{
printf("%d \n",(PQgetvalue(res1,0,0)[i]));
//prints 0000 here
}

Um, what's the actual data type of intval? The above would be expected
if it were, say, bigint.

regards, tom lane