Re: [bug-report]SQLRowCount set affected row numbers is incorrect when use SQLBindParameter and SQLSetStmtAttr for SQL_ATTR_PARAMSET_SIZE

Поиск
Список
Период
Сортировка
От Dave Cramer
Тема Re: [bug-report]SQLRowCount set affected row numbers is incorrect when use SQLBindParameter and SQLSetStmtAttr for SQL_ATTR_PARAMSET_SIZE
Дата
Msg-id CADK3HHK7MwP9MZeSBGSZgOBqAB7GUFiL92hq5qMqoSVpzEosTA@mail.gmail.com
обсуждение исходный текст
Ответ на [bug-report]SQLRowCount set affected row numbers is incorrect when use SQLBindParameter and SQLSetStmtAttr for SQL_ATTR_PARAMSET_SIZE  (Chang Lu <luchang0624@gmail.com>)
Список pgsql-odbc



On Thu, 18 Jul 2024 at 05:54, Chang Lu <luchang0624@gmail.com> wrote:
Hi,

I'm tring to insert and update a lot of records using  SQLBindParameter and SQLSetStmtAttr, but SQLRowsCount returned record number affected by ONLY the LAST SINGLE SQL STATEMENT.

Here is my code sequence.

1. 
status = SQLBindParameter(cda,
       KCPD_SCAST(KCPD_SQLUSMALLINT, parm_pos),
       KCPD_SCAST(KCPD_SQLSMALLINT, param_type),
       ftype,
        KCPD_SCAST(KCPD_SQLSMALLINT, mapped_sqltype),
        temp_column_size,
        sqltype == SQL_TYPE_TIMESTAMP ?  kcpd_odbc_date_scale : 0,  
        KCPD_RCAST(KCPD_SQLPOINTER, v.p_v),
        buflen,
        v.p_len);

2. 
status = SQLSetStmtAttr(cda,
         SQL_ATTR_PARAMSET_SIZE,
         KCPD_RCAST(void*, temp_iters), 
         SQL_NTS);

3.
status = SQLExecute(cda);

4.
SQLRowCount(cda, affected_num);

 I inserted 1000 records into the table, but affected_num set by SQLRowCount is 1

I searched the source code for this issue, and found in CC_send_query_append (connection.c:2062) 
image.png

My question is :
Is this line (connection.cpp : 2062) has a bug? I think it may use '+=' rather than '='.
lack of libpg.dll and headers, I cannot compile the source code and check my idea.

Good Morning Chang,

Thanks for the report. If you go to  postgresql-interfaces/psqlodbc (github.com) and file the issue we will be able to track it better 

Also since it will run tests for you there, you can test it with a Pull Request.

Cheers,

Dave
Вложения

В списке pgsql-odbc по дате отправления:

Предыдущее
От: Chang Lu
Дата:
Сообщение: [bug-report]SQLRowCount set affected row numbers is incorrect when use SQLBindParameter and SQLSetStmtAttr for SQL_ATTR_PARAMSET_SIZE
Следующее
От: "Wal, Jan Tjalling van der"
Дата:
Сообщение: RE: [bug-report]SQLRowCount set affected row numbers is incorrect when use SQLBindParameter and SQLSetStmtAttr for SQL_ATTR_PARAMSET_SIZE