我在代码中定义了一个唯一的_ConnectionPtr变量用来连接数据库,并定义了一系列_RecordsetPtr变量程序实现的主要功能是
1 每隔5秒搜索一遍数据库并执行指定操作
2 有消息来时自动接受存储程序的逻辑没有问题,一开始运行正常,但是在运行一段时间以后会捕捉到异常,break后光标指向了_RecordsetPtr15::AddNew(),_RecordsetPtr15::GetCollect等函数定义,没有解决思路我想问一下对于连接到同一个_ConnectionPtr变量的一系列_RecordsetPtr变量,能否频繁的操作同一个表,是否需要对它们按顺序执行?还有,在每一个_RecordsetPtr变量创建实例并执行操作之后,_RecordsetPtr15::Close()是不是必须的?谢谢各位了!

解决方案 »

  1.   

    许多_RecordsetPtr对应同一张表?
      

  2.   

    执行一个操作后必须立即调用close去释放资源。
      

  3.   

    ...
    最好一张表一个记录集
    删除,插入,完全可以通过_ConnectionPtr搞定
      

  4.   

    4楼你好,能说的再详细点么?你的意思是不是建立多个_ConnectionPtr?
      

  5.   

    ...
    不是
    你是一个数据库吧
    一个数据库一个_ConnectionPtr
    一张表一个_RecordsetPtr
    一般情况是这样
      

  6.   

    可是一个_RecordsetPtr 怎么才能频繁的(可能会同时)进行多种操作呢?
      

  7.   

    你是怎么样做的?? addnew了以后要update..然后再执行其它数据库操作之前,最好重新连接一下数据库或用requery更新一下记录集..