vs2010,用mfc创单文档工程,支持数据库,然后在ODBC中选择一个数据库(sqlserver2008),并指定一张表。
得到的工程中,有这样几个重要的类,一个是class CMyODBCSet : public CRecordset,一个是class CMyODBCView : public CRecordView。m_pSet是指向CMyODBCSet的指针,CMyODBCSet已经与打开了的数据库绑定。
在对话框中拖入几个编辑框,让编辑框的与m_pSet->m_SID等值绑定,SID是数据库的表中的一个列属性名。但是我用classwizard来给编辑框添加变量时,找不到m_pSet->m_SID等变量。
说简单点就是我按照一个帖子来完成c++使用ODBC来连接数据库,文章中用的是VC++6.0,我用的是vs2010。他能实现,我这边出了问题。
嗯,问题描述的比较混乱,因为这个东西本身关系也有点复杂,但是做过的人肯定一看就知道问题出在哪里了。
求教!

解决方案 »

  1.   

    向导当然是找不到m_pSet->m_SID了 它又不知道你程序里面定义了哪些变量  你可以自己随便写个名字 然后自己去cpp里DoDataExchange把响应的变量改成m_pSet->m_SID
      

  2.   

    那为什么VC6.0就可以知道我定义了那些变量呢?难道VC2010的智能程度还不如20年前的VC6.0?
      

  3.   

    那为什么VC6.0就可以知道我定义了那些变量呢?难道VC2010的智能程度还不如20年前的VC6.0?我不知道6.0有没有你说的那个功能  但10肯定是自己输变量名的  也许你觉得这是不智能  就算6.0有为什么10反而没有 那自然是有原因的 就我个人而言 没有像你这样先定义一个变量然后又用向导去定义变量来关联这个自己定义的变量这样用过... 
      

  4.   

    那为什么VC6.0就可以知道我定义了那些变量呢?难道VC2010的智能程度还不如20年前的VC6.0?我不知道6.0有没有你说的那个功能  但10肯定是自己输变量名的  也许你觉得这是不智能  就算6.0有为什么10反而没有 那自然是有原因的 就我个人而言 没有像你这样先定义一个变量然后又用向导去定义变量来关联这个自己定义的变量这样用过... 
    VC6.0非常智能,你只需要做选择,这个vc2010反倒退步了,真是不可思议,我要敲打半天代码才能跟上vc6.0点一下的速度,你说不是退步我跟你急。
      

  5.   

    VS2010我手动写代码一个个的绑定了,才能顺利运行,又出现了新的问题,点添加数据,也就是运行m_pSet->AddNew()这条语句,VC2010就弹出来:
    记录集为只读我必须重新创建工程,然后选择动态的而不是快照,程序才能正确运行。VC6.0没有这样的问题。