DB-Library编程疑难问题请教!
我用VC1.52编写了DOS下的应用程序,使用db-library库,访问MS SQL SERVER 7.0 数据库服务器。
程序发送select语句到SQL SERVER执行,同样的语句在SQL SERVER上的Query Analyser上执行能返回多行结果,但如下的程序处理,无论SQL SERVER上的表格中有几条纪录,用dbnextrow处理的结果,第一次调用返回MORE_ROWS,第二次调用就返回NO_MORE_ROWS,始终只能处理一条纪录。
希望大虾能指点迷津!
unsigned char id;
unsigned char name[255];
dbfcmd(dbproc, "select id,name from id_name_table");
dbsqlexec(dbproc);
while ( (result_code=dbresults(dbproc)) != NO_MORE_RESULTS )
{
if ( (result_code == SUCCEED) )
{
dbbind(dbproc, 1, TINYBIND, (DBINT)0, &id );
dbbind(dbproc, 2, NTBSTRINGBIND, (DBINT)0, name );
index = 0;
while( dbnextrow(dbproc) != NO_MORE_ROWS )
{
id_name_table[index].id = id;
strcpy(id_name_table[index].name, name);
index++;
}
}
else
return;
}