为什么用CDatabase 、CRecordSet类 做程序,容易出问题

wjx_0_2001 2012-06-05 11:26:16
是这样的

有一个数据库,一表MyAcc.

然后程序里有这样的操作

CDatabase Database;

Database.OpenEx(g_strConnectDatabase,CDatabase::noOdbcDialog );

strSql.Format("Insert into LogInfo 。。。);

Database.ExecuteSQL(strSql);


strSql.Format("update LogSate set state=0 where UID=%d",uID);//flag=1表示已经做过更新

Database.ExecuteSQL(strSql);



=======================================================================

上面执行没有问题,然后到了对MyUserInfo进行更新的时候,就说:连接超时

程序异常退出,还是提示:

超时已过期 State:S1T00,Native:0,Origin:[Microsoft][ODBC SQL Server Driver]

我把上面两个操作都去掉了,结果也是一样

这几个表都是同一个数据库中的表


//
strSql.Format("update MyUserInfo set flag=1 where ID=%d",uID);//flag=1表示已经做过更新

Database.ExecuteSQL(strSql);-----执行到这里,卡一会,然后,就异常退出了


为什么要CRecordset、CDatabase做数据库编程,出现这样那样的问题呢

如果放在服务程序要大量并发的访问数据库,那不是更糟糕啊



...全文
235 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
wjx_0_2001 2012-06-07
  • 打赏
  • 举报
回复
谢谢 大家


虽然 问题没解决 很谢谢大家

结贴
wocow3 2012-06-06
  • 打赏
  • 举报
回复
ADO是个框架模型,一套接口适用于很多数据源,只要能提供provider。
不过现在MS已经不准备更新ADO了,对新开发的程序MS推荐使用ODBC
fronz 2012-06-06
  • 打赏
  • 举报
回复
楼主别太固执,找个能用的类似软件配置在你的环境下,尝试一下,也有可能是你配置问题。
Eleven 2012-06-05
  • 打赏
  • 举报
回复
放到try{...}catch(...){...}中
罗平 2012-06-05
  • 打赏
  • 举报
回复
查询分析器也过期,那就不是CRecorset的问题了。
数据量很大吗?索引太多?导致更新缓慢而过期?
wjx_0_2001 2012-06-05
  • 打赏
  • 举报
回复
执行了

就是select 也超时过期

何解

我想请教下各位:

如果,让你们写个服务程序,要大量的访问SQL SEVER 数据库

你们会怎么设计这个服务程序来访问呢

会用CRecordset和CDatabase类吗

不会 都有哪些方法

不吝赐教
fronz 2012-06-05
  • 打赏
  • 举报
回复
执行一些数据库操作的简单指令试下,确定SQL运行正常?
wjx_0_2001 2012-06-05
  • 打赏
  • 举报
回复
更有意思了


我在查询分析器里

执行update MyUserInfo set flag=1 where ID=1000


同样搞TMD半天,然后最后弹出[Microsoft][ODBC SQL Server Driver]超时已过期

这。。。
wjx_0_2001 2012-06-05
  • 打赏
  • 举报
回复
另外特别说明:

我这个情况不存在什么网络不通

数据源错误,SQL SP4 等等一系列的问题

这些都试过了

都不行

而且

发现,如果在服务器里

频繁的用CRecordset类,Open,Close

就会出问题。


还有一个问题,就是关于数据库连接的问题

CRecordset 。close能真正的关闭所谓的数据库连接吗??

wjx_0_2001 2012-06-05
  • 打赏
  • 举报
回复
放了

但是e->m_error 就是超时已过期

为什么?

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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