C++ ADO Execute方法影响行数大于100时错误 真心求原因!!!

carly95 2012-09-25 02:42:17
VS2010 C++ ADO 用命令行参数给出时间值,去数据库里查询,但是返回的影响行数与把sql语句直接放到数据库执行的影响行数不同。当sql返回行数小于100时,execute的records_affected返回影响行数正确,但当大于100时,records_affected.lVal恒为100,这是什么原因呢!!!!! 百思不得其解 想看看源代码 也没找到 求高手帮忙啊!!!!谢谢!!!
  
sql1.Format(_T("select * from author t where t.province='北京'"));
m_pConnection->Execute(_bstr_t(sql1),&records_affected,adCmdText);
cout<< "影响的行数" << records_affected.lVal << endl;


另外records_affected.intVal 和 records_affected.lVal 有什么区别呢?

ps:用结果集_RecordsetPtr
然后用GetRecordCount()获得的结果集行数,就是正确的。execute到底怎么回事,,没有高手能解答一下么。。。
跪求。。。。

...全文
159 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
whvsyou 2013-04-02
  • 打赏
  • 举报
回复
我也在搞这一块 我的问题比你的低级多了、。。能给我看看你计算影响行数的源码么、、、
赵4老师 2012-09-26
  • 打赏
  • 举报
回复
十有八九是该打的最新补丁没打。
carly95 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
影响行数 不是 针对 insert、update、delete的吗?
select与此无关吧
[/Quote]

那为什么select小于100的时候 就正确呢
冷月清晖 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

引用 7 楼 的回复:
十有八九是该打的最新补丁没打。

您说完以后我立刻跑去打了两个补丁 重启 可是还是不对。。。
[/Quote]

你试试 insert 语句 也有这个问题不
carly95 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
十有八九是该打的最新补丁没打。
[/Quote]
您说完以后我立刻跑去打了两个补丁 重启 可是还是不对。。。
sumos 2012-09-25
  • 打赏
  • 举报
回复
影响行数 不是 针对 insert、update、delete的吗?
select与此无关吧
carly95 2012-09-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

把问题发布到微软的MSDN论坛去.
[/Quote]

我刚又试了一下,sql语句为update的时候结果就正确,select就不正确。
还是感谢你,我去MSDN上看看
冷月清晖 2012-09-25
  • 打赏
  • 举报
回复
把问题发布到微软的MSDN论坛去.
冷月清晖 2012-09-25
  • 打赏
  • 举报
回复
错了,你用的是2010
冷月清晖 2012-09-25
  • 打赏
  • 举报
回复
难道因为用的是VS2012评估版?

65,206

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧