From: | <noreply(at)pgfoundry(dot)org> |
---|---|
To: | noreply(at)pgfoundry(dot)org |
Subject: | [ psqlodbc-Bugs-1002054 ] SQLSetDescField with SQL_DESC_INDICATOR_PTR has no effect. |
Date: | 2007-02-16 14:30:17 |
Message-ID: | 20070216143017.104A9217282@pgfoundry.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Bugs item #1002054, was opened at 2007-02-16 14:30
You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1002054&group_id=1000125
Category: None
Group: None
Status: Open
Resolution: None
Priority: 3
Submitted By: Nobody (None)
Assigned to: Nobody (None)
Summary: SQLSetDescField with SQL_DESC_INDICATOR_PTR has no effect.
Initial Comment:
I discovered this as a side effect of something that seems to have changed. Seemingly, setting SQL_DESC_TYPE clears any information set during SQLBindCol (this is very different behaviour to all other ODBC drivers). Attempting to get around this by subsequently re-setting the indicator pointer seems to have no effect. Looking in pgapi30.c, it seems that this is the case:
break;
case SQL_DESC_DATA_PTR:
opts->bindings[row_idx].buffer = Value;
break;
case SQL_DESC_INDICATOR_PTR:
tptr = opts->bindings[row_idx].used;
if (Value != tptr)
{
ret = SQL_ERROR;
DC_set_error(desc,
DESC_INVALID_DESCRIPTOR_IDENTIFIER, "INDICATOR != OCTET_LENGTH_PTR");
}
break;
case SQL_DESC_OCTET_LENGTH_PTR:
opts->bindings[row_idx].used = Value;
break;
case SQL_DESC_OCTET_LENGTH:
opts->bindings[row_idx].buflen = CAST_PTR(SQLLEN,
Value);
break;
case SQL_DESC_PRECISION:
opts->bindings[row_idx].precision =
CAST_PTR(SQLSMALLINT, Value);
note, unlike all other options, SQL_DESC_INDICATOR_PTR doesn't seem to have any effect.
This all came about trying to determine why SQLFetch was throwing an error on a null data fetch (log file attached), erronously claiming that the strlen_or_ind pointer was null.
----------------------------------------------------------------------
You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1002054&group_id=1000125
From | Date | Subject | |
---|---|---|---|
Next Message | noreply | 2007-02-16 14:31:22 | [ psqlodbc-Bugs-1002054 ] SQLSetDescField with SQL_DESC_INDICATOR_PTR has no effect. |
Previous Message | noreply | 2007-02-16 02:27:59 | [ psqlodbc-Bugs-1001906 ] Unable to obtain list of tables from the datasource |