您的位置:首页 > 数据库

单独使用MFC CRecord类进行数据库操作(原创心得)

2005-04-13 21:51 567 查看
最近在开发中使用VC++ 6.0和ODBC方式对数据库进行操作时,为了提高灵活性,所以直接使用了CRecordset类建立对象。在使用中连接数据库,打开记录集都没有问题,而且CRecordset中的MoveFirst/MoveNext/MovePrev/MoveLast等原有函数也都可以正常使用,但是当我想使用CRecordset类的Delete()函数进行操作的时候就会报错Assert Failed.经过Tracer发现问题出在SetFieldNull()函数中的判断
if(m_nFields <0)
    ASSERT(FALSE);
经过跟踪发现,使用MFC Classwizard进行派生时会在构造函数中自动对m_nFields进行赋值,但是当我们自由使用CRecordset的时候就没有了这一部,当我显示的对m_nFields赋值时仍然会报错,是关于RFX的错误。没有使用关于CRecordset类的Update操作,但是看到其他朋友写的文章应该是select是不会有问题的。看来自己要把RFX那部分也补上了,后者由于时间关系没有完成。完成测试会更新该文档。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐