为什么用CDatabase 、CRecordSet类 做程序,容易出问题
是这样的
有一个数据库,一表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做数据库编程,出现这样那样的问题呢
如果放在服务程序要大量并发的访问数据库,那不是更糟糕啊