请问pro * c中的动态sql的问题

小弟在书籍看到EXEC SQL FETCH C USING DESCRIPTOR select_desc可以一次FETCH多条记录出来。想请问一下程序怎么写?谢谢!

我的片段代码如下:
for(;;)
{
/*执行Fetch语句,从数据库中提取一行记录*/
EXEC SQL FETCH C USING DESCRIPTOR select_desc;
for(i=0;i<select_desc[j]->F;i++)
{
if(*select_desc[j]->I[i] <0)
{ 。。。。。。}
else
{ 。。。。。。}
}
}

[374 byte] By [zmaze-风林火山] at [2007-12-16]
# 1
EXEC SQL WHENEVER NOT FOUND GOTO sqlerr;
EXEC SQL WHENEVER SQLERROR GOTO sqlerr;

for(;;)
{
/*执行Fetch语句,从数据库中提取一行记录*/
EXEC SQL FETCH C USING DESCRIPTOR select_desc;
for(i=0;i<select_desc[j]->F;i++)
{
if(*select_desc[j]->I[i] <0)
{ 。。。。。。}
else
{ 。。。。。。}
}
}
return (0);

sqlerr:
...

return (sqlca.sqlcode);

liubear at 2007-10-26 > top of Msdn China Tech,C/C++,C语言...
# 2
等于没有说,我是问怎么一次FETCH多条记录出来,我这样写并没有错误,只是每次是FETCH一条。
zmaze-风林火山 at 2007-10-26 > top of Msdn China Tech,C/C++,C语言...
# 3
我也想知道。没有高手来解决吗?
我顶。。。。
shenyongtao at 2007-10-26 > top of Msdn China Tech,C/C++,C语言...
# 4
每次取一条记录,保存到你自己开僻的缓冲区中,不就所有的记录都fetch出来了吗?需要改的是:
EXEC SQL WHENEVER NOT FOUND GOTO not_found;
...
not_found:
do something...
liubear at 2007-10-26 > top of Msdn China Tech,C/C++,C语言...
# 5
liubear,他的意思是肯定是每次Fetch一条纪录,如果数据量大,太慢了。所以想一次fetch一批出来。
shenyongtao at 2007-10-26 > top of Msdn China Tech,C/C++,C语言...