ado 关于数据库 _RecordsetPtr的有关问题

ado 关于数据库 _RecordsetPtr的问题
我谢了一个程序代码如下:

sql_string1.Format( "select   NAME,NAME_CHN,NAME_PY   from   POINAME   where   NAME   =   %s ",name);

if(FAILED(m_pPoiNameRecordset-> Open(_variant_t(sql_string1),_variant_t((IDispatch   *)m_pConnection,true),
adOpenStatic,adLockOptimistic,adCmdText)))
{
AfxMessageBox( "Create   RecordSet   Instance     failed! ");
return   NULL   ;
}

_variant_t   name_chn;
_variant_t   name_py;
CString   name_chn_record   =   " ' "   ;
CString   name_py_record   =   " "   ;
bool   flag   =   false;
while(!m_pPoiNameRecordset-> adoeof){
name_chn   =   m_pPoiNameRecordset-> GetCollect( "NAME_CHN ");
name_py   =   m_pPoiNameRecordset-> GetCollect( "NAME_PY ");

if   (flag==false)   {
flag   =   true;
}
else{
name_chn_record+= "% ";
name_py_record+= "% ";
}
name_chn_record+=((LPCTSTR)(_bstr_t)name_chn);
name_py_record+=((LPCTSTR)(_bstr_t)name_py);
}


NAME_CHN   和   NAME_PY   字段能够提取出来,但是这个循环却陷入了死循环
每次取出的数据都是一样的。
那为可以给分析一下原因

------解决方案--------------------
m_pPoiNameRecordset-> MoveNext();
------解决方案--------------------
呵呵,接分!