- 论坛徽章:
- 5
|
如果还不行,就用 SQLMoreResults(...)测试一下.
system888net 发表于 2010-12-28 22:29
添加上 语句while(SQLMoreResults(hstmt) == SQL_SUCCESS);后,发现能返回输出参数的值,但是记录集又不能返回了
sprintf(select_str,"{call pageUserlist_p(?)}");
connectDB(); //调用连接数据库函数
retcode = SQLBindParameter(hstmt, 1, SQL_PARAM_OUTPUT, SQL_C_LONG,SQL_INTEGER, 0, 0, &recordTotal, 0, &cb1); //返回值
retcode = SQLExecDirect(hstmt,(SQLCHAR *)select_str,SQL_NTS);
while(SQLMoreResults(hstmt) == SQL_SUCCESS);
if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO)
{
retcode=SQLBindCol(hstmt,1,SQL_C_ULONG,&userid,11,&cb);
retcode=SQLBindCol(hstmt,2,SQL_C_CHAR,userCode,11,&cb);
retcode=SQLBindCol(hstmt,3,SQL_C_CHAR,userName,20,&cb);
retcode=SQLBindCol(hstmt,4,SQL_C_CHAR,loadName,20,&cb);
retcode=SQLBindCol(hstmt,5,SQL_C_CHAR,userPwd,20,&cb);
while (TRUE)
{
retcode = SQLFetch(hstmt);
if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO)
{
//代码
}
}
} |
|