Re: Newbee to databases (ODBC)

From: Andrei Kovalevski <andyk(at)commandprompt(dot)com>
To: Malm Paul <paul(dot)malm(at)saabgroup(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Newbee to databases (ODBC)
Date: 2008-01-22 04:13:38
Message-ID: 47956D72.6020106@commandprompt.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,

You can use SQLGetData(...) function:

//Setup selectstatement
strcpy((char*) SQLStmt, "Select no_char, blobdata from tab1");

//Execute the statement
rc = SQLExecDirect(dbConnection.StmtHandle, SQLStmt, SQL_NTS);

//Define what to read out from the selection set
rc =SQLBindCol(StmtHandle, 1, SQL_C_LONG, (SQLPOINTER) &no, sizeOf(no),
NULL);
rc =SQLBindCol(StmtHandle, 2 SQL_C_BINARY, (SQLPOINTER) blob, no, NULL);

// get the values
while(SQLFetch(StmtHandle) != SQL_NO_DATA)
{
void* blob = malloc(no);
if (blob)
{
rc = SQLGetData(StmtHandle, 2, SQL_V_BINARY, blob, no, &no);
...
...
free (blob);
}
}

Malm Paul wrote:
>
> Hi all,
> I'm sorry to bother you with this question, I know it is a C++ ODBC
> question. But I'm a bit desperate.
> Perhaps I'll be lucky.
>
> I have a table with 2 columns no_char and blobdata were no_char is
> number of characters in blobdata. I would like to handle each row from
> the result set.
>
>
> I have got this far:
>
> //Setup selectstatement
> strcpy((char*) SQLStmt, "Select no_char, blobdata from tab1");
>
> //Execute the statement
> rc = SQLExecDirect(dbConnection.StmtHandle, SQLStmt, SQL_NTS);
>
> //Define what to read out from the selection set
> rc =SQLBindCol(StmtHandle, 1 SQL_C_LONG, (SQLPOINTER) &no, sizeOf(no),
> NULL);
> rc =SQLBindCol(StmtHandle, 2 SQL_C_BINARY, (SQLPOINTER) blob, no, NULL);
>
> // get the values
> while(SQLFetch(StmtHandle) != SQL_NO_DATA)
> {
> ...
> ...
> }
>
> But this will not work since I'm using "no" in the second statement to
> define the blob size, and no is not set yet.
> I could solve it by using 2 different select statemen (once for the
> size and one for the blob) but that seems to be a bad solution.
>
> Sorry again!
> /Paul
>

--
Andrei Kovalevski
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Managed Services, Shared and Dedicated Hosting
Co-Authors: plPHP, ODBCng - http://www.commandprompt.com/

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Julio Cesar Sánchez González 2008-01-22 05:26:58 Re: SHA1 on postgres 8.3
Previous Message Tom Lane 2008-01-22 00:47:40 Re: Sun acquires MySQL