问下关于C++ 查询MSSQL(ADO)

kdsrpg 游戏引擎开发组组长  2013-02-09 01:29:17
刚学C++几天,如题,请问如何获得一个数据查询的总数,还有网上搜的都是遍历字段值,字段名和类型什么的如何获取?最好能给个关于这些语法的说明。。。请看代码,就是获取 select * from kdst 的记录条总数,以及下面遍历后的字段名和类型之类的(我只获取到了值)
	_RecordsetPtr ks;
ks.CreateInstance(__uuidof(Recordset));
ks->Open("SELECT * FROM kdst"
conn.GetInterfacePtr(),
adOpenDynamic,
adLockOptimistic,
adCmdText);






_variant_t var;
while(!ks->adoEOF)
{
//var = ks->GetCollect("id");
var = ks->GetCollect("dtime");
CString ks_id = (LPCSTR)_bstr_t(var);
cout << ks_id << " (dtime值)" << endl;

//遍历所有的字段
Field * field = NULL;
HRESULT hr;
Fields * fields = NULL;
hr = ks->get_Fields (&fields);//得到记录集的字段集和
long ColCount;
if(SUCCEEDED(hr)) fields->get_Count(&ColCount);
for(int i=0;i<ColCount;i++){
var = ks->GetCollect(long(i));



CString ks_id = (LPCSTR)_bstr_t(var);
ks_id.TrimRight();


cout << ks_id << " (值)" << endl;
}

//得到记录集的字段集合中的字段的总个数

if(SUCCEEDED(hr))
fields->Release();//释放指针

ks->MoveNext();
}
ks->Close();
ks=NULL;
rs=NULL;





另外问一下关于IOCP中多线程同时访问vector(查询、删除、ADD等)怎样好呢,因为是多线程同时进行,我估计A线程在DEL的时候B线程又在循环查询读取中会出错啊。有什么好的思路提供一下,另外麻烦给个关于vector的语法说明呀。

如果能有C++的完全语法详解链接就最好了!主要是刚接触C++,和其他我会的语言有很大区别....想弄明白点,,,不过很多基本的函数都要去自己实现很麻烦啊,是不是MFC提供的函数操作起来就类似其他语言了啊(如ASP JS PHP AS3 RUBY之类这些。。起码字符串相加直接+++哈哈..)
...全文
339 3 点赞 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
kdsrpg 2013-02-12
差了下资料,明白了,不过很麻烦 还是封装成函数好..
  • 打赏
  • 举报
回复
kdsrpg 2013-02-09
有人知道吗 怎么查询字段名?
  • 打赏
  • 举报
回复
qq120848369 2013-02-09
数据库自己是并发的, 你自己应该多线程对应多个mysql连接。
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ 语言
加入

6.0w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
申请成为版主
帖子事件
创建了帖子
2013-02-09 01:29
社区公告
暂无公告