C++使用ADO操作数据库的疑问解决方案

C++使用ADO操作数据库的疑问
本人初学C++,刚弄明白怎么连接数据库。由于之前一直使用C#编程,对C++所知甚少。
我写了如下代码:
//连接数据库
ADOConn m_AdoConn;
m_AdoConn.OnInitADOConn();
//设置SELECT语句
_bstr_t vSQL;
vSQL = "select p_value from tb_pdatavalue where p_id%1024<=256 and p_id%1024<>0 and (p_id%1024=2 or p_id%1024=1)";
//执行SELECT语句
_RecordsetPtr m_pRecordset;
m_pRecordset = m_AdoConn.GetRecordSet(vSQL);
mo=m_pRecordset->GetCollect("p_value");
//断开与数据库的连接
m_AdoConn.ExitConnect();
vSQL得出的结果是两个数,一个是2一个是235.我的问题就是,我用mo来获取数据库查出的值,为什么只能获取第一个值“2”呢?后面的235怎么获取呢?我想问问C++里面有没有类似C#dataset的用法,如ds.tables[0].rows[0]的用法,可以获取任意一行一列的?请给出代码,谢谢!

------解决方案--------------------
通过循环操作即可.
C/C++ code

while( m_pRecordset->adoEOF == 0 ) //EOF判断是否到末尾   
{  
    mo = m_pRecordset->GetCollect("p_value");
    m_pRecordset->MoveNext();  
}