using native odbc command
Code: Select all
/* 1. proc test */
_rc = SQLPrepare(_hstmt, (SQLCHAR *)"{ CALL PKG2.P(?,?,?) }", SQL_NTS);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLBindParameter(_hstmt ,1, SQL_PARAM_INPUT_OUTPUT, SQL_C_ULONG,
SQL_CSR, 0, 0, &csr1, 0, &ind1);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLBindParameter(_hstmt ,2, SQL_PARAM_INPUT_OUTPUT, SQL_C_ULONG,
SQL_CSR, 0, 0, &csr2, 0, &ind2);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLBindParameter(_hstmt ,3, SQL_PARAM_INPUT_OUTPUT, SQL_C_ULONG,
SQL_CSR, 0, 0, &csr3, 0, &ind3);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLExecute(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLBindCol(_hstmt, 1, SQL_C_SLONG, &var, sizeof(SQLINTEGER), &ind1);
CuAssertStmtError(_rc, SQL_SUCCESS);
/* fetch */
_rc = SQLFetch(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
CuAssertIntEq(var, 1);
_rc = SQLMoreResults(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLFetch(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
CuAssertIntEq(var, 2);
_rc = SQLMoreResults(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
_rc = SQLFetch(_hstmt);
CuAssertStmtError(_rc, SQL_SUCCESS);
CuAssertIntEq(var, 3);
_rc = SQLMoreResults(_hstmt);
CuAssertStmtError(_rc, SQL_NO_DATA_FOUND);
odbc provider not supported "OpenNext"
how to use SQLMoreResults ?