0 Replies Latest reply: Feb 17, 2012 3:23 PM by 392474 RSS

    Problem with  SQL_ATTR_ROW_STATUS_PTR on 11.02.0030

    392474
      The problem occur only with version *11.02.0030* all other previous version of the client work has expected.

      If you set a row status ptr. This properties is supposed to be an SQLUSMALLINT (unsign short)

      So assuming my code does sothing like:
      SQLUSMALLINT *m_rgRowStatus;
      m_rgRowStatus=(SQLUSMALLINT *)malloc(112 * sizeof(SQLUSMALLINT));
      ::SQLSetStmtOption(m_hstmt, SQL_ATTR_ROW_ARRAY_SIZE, 112)
      ::SQLSetStmtOption(m_hstmt, SQL_ATTR_ROW_STATUS_PTR, m_rgRowStatus));

      ...

      After a call to

      AFX_ODBC_CALL(::SQLFetchScroll(m_hstmt, SQL_FETCH_NEXT, 0));

      The status of each row get rewriten has if it was SQLUINTEGER effectively overwriting memory.

      Maybe a screens shots will help:

      [Before fetchScroll|http://i200.photobucket.com/albums/aa19/jajoflo/before_fetchscroll.png]

      [After FetchScroll|http://i200.photobucket.com/albums/aa19/jajoflo/afterfetchscroll.png]



      Of course this is a major problem.

      Any Idea or workaround?

      Edited by: ca109900 on Feb 17, 2012 1:22 PM