| From: | "Mihail Popov" <mi1919(at)tut(dot)by> | 
|---|---|
| To: | pgsql-bugs(at)postgresql(dot)org | 
| Subject: | BUG #5949: ODBC driver. Binding Arrays of Parameters | 
| Date: | 2011-03-25 13:35:08 | 
| Message-ID: | 201103251335.p2PDZ8iR051758@wwwmaster.postgresql.org | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-bugs | 
The following bug has been logged online:
Bug reference:      5949
Logged by:          Mihail Popov
Email address:      mi1919(at)tut(dot)by
PostgreSQL version: 9.3
Operating system:   windows 7
Description:        ODBC driver. Binding Arrays of Parameters
Details: 
Using ODBC, I encountered an error.
I used the ODBC API to insert an array of records.
Example: 
unsigned long r = 5;
SQLSetStmtAttr(stmt, SQL_ATTR_PARAM_BIND_TYPE, SQL_PARAM_BIND_BY_COLUMN,
0);
SQLSetStmtAttr(stmt, SQL_ATTR_PARAMSET_SIZE, &r, 0);
….
// Bind the parameters in column-wise fashion.
SQLBindParameter(…)
…
When you run the error occurred.
SQLExecDirect(hstmt, Statement, SQL_NTS);
Errors are detected in the implementation of SQLSetStmtAttr in the ODBC
driver. Coming PGAPI_SetStmtAttr (HSTMT StatementHandle, SQLINTEGER
Attribute, PTR Value, SQLINTEGER StringLength) in pgapi30.c
For SQL_ATTR_PARAMSET_SIZE transformation
SC_get_APDF (stmt) -> paramset_size = CAST_UPTR2 (SQLUINTEGER SQLINTEGER,
Value);
led to the fact that paramset_size not equal to 5 and the number of memory
address that contains the variable r.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | alex | 2011-03-25 13:37:55 | BUG #5950: backend terminating after altering table | 
| Previous Message | Greg Stark | 2011-03-25 11:46:20 | Re: BUG #5947: Error while running query |