正在学习,MFC数据库开发方面的知识,
实例是VC6.0下的,想转到VS2005下使用,按照介绍的原理搭建好之后运行,结果不能插入元素。
对比VCH和VS向导给出的框架,分析原因,发现VS缺少了很多属性,
VC的属性自动写在C*Set中的open()函数中,内部添加了很多属性;
VS的属性自动添加在C*SetAccessor的GetRowsetProperties()内,只有两个属性,默认情况下,只能查看数据,而不能修改数据,
于是在此函数内添加两条属性
pPropSet->AddProperty(DBPROP_IRowsetChange, true);
pPropSet->AddProperty(DBPROP_UPDATABILITY, DBPROPVAL_UP_CHANGE | DBPROPVAL_UP_INSERT | DBPROPVAL_UP_DELETE);
问题便得以解决,此时的程序便可以实现添加删除功能了。
本人刚学此部分内容,不知说的对与否,忘大虾指正。
本文详细介绍了在从VC6.0迁移至VS2005过程中遇到的数据库开发问题,特别是关于属性自动添加的差异。通过对比VC和VS的框架,分析了为何VS缺少某些属性,并提供了解决方法:在C*SetAccessor的GetRowsetProperties函数内手动添加所需的属性。最终,通过添加`pPropSet->AddProperty(DBPROP_IRowsetChange,true);`和`pPropSet->AddProperty(DBPROP_UPDATABILITY,DBPROPVAL_UP_CHANGE|DBPROPVAL_UP_INSERT|DBPROPVAL_UP_DELETE);`,实现了添加、删除功能。
5863

被折叠的 条评论
为什么被折叠?



