解决方案 »

  1.   

    在哪儿出问题了?
    我运行后出现一个对话框,显示:Line1->Acol1
    点击确定后进入主界面,这是正常还是不正常啊?
      

  2.   

    你应该尝试用三个不同的CRecordSet派生类来处理你的三个表.这样就应该没有问题了. 下面是这三个类中关键的几个函数,其他的类似修改即可:
    CString CDBSet1::GetDefaultConnect()
    {
    return _T("ODBC;DSN=TmpDB");
    }CString CDBSet1::GetDefaultSQL()
    {
    return _T("[TABA]");
    }void CDBSet1::DoFieldExchange(CFieldExchange* pFX)
    {
    //{{AFX_FIELD_MAP(CDBSet)
    pFX->SetFieldType(CFieldExchange::outputColumn);
    RFX_Long(pFX, _T("[TABA].[编号]"), m_column1);
    RFX_Text(pFX, _T("[ACol1]"), m_ACol1);
    RFX_Text(pFX, _T("[ACol2]"), m_ACol2);
    RFX_Text(pFX, _T("[ACol3]"), m_ACol3);
    //}}AFX_FIELD_MAP
    }
    CString CDBSet2::GetDefaultConnect()
    {
    return _T("ODBC;DSN=TmpDB");
    }CString CDBSet2::GetDefaultSQL()
    {
    return _T("TABB]");
    }void CDBSet2::DoFieldExchange(CFieldExchange* pFX)
    {
    //{{AFX_FIELD_MAP(CDBSet)
    pFX->SetFieldType(CFieldExchange::outputColumn);
    RFX_Long(pFX, _T("[TABB].[编号]"), m_column2);
    RFX_Text(pFX, _T("[BCol1]"), m_BCol1);
    RFX_Text(pFX, _T("[BCol2]"), m_BCol2);
    RFX_Text(pFX, _T("[BCol3]"), m_BCol3);
    //}}AFX_FIELD_MAP
    }CString CDBSet3::GetDefaultConnect()
    {
    return _T("ODBC;DSN=TmpDB");
    }CString CDBSet3::GetDefaultSQL()
    {
    return _T("[TABC]");
    }void CDBSet3::DoFieldExchange(CFieldExchange* pFX)
    {
    //{{AFX_FIELD_MAP(CDBSet)
    pFX->SetFieldType(CFieldExchange::outputColumn);
    RFX_Long(pFX, _T("[TABC].[编号]"), m_column3);
    RFX_Text(pFX, _T("[CCol1]"), m_CCol1);
    RFX_Text(pFX, _T("[CCol2]"), m_CCol2);
    RFX_Text(pFX, _T("[CCol3]"), m_CCol3);
    //}}AFX_FIELD_MAP
    }这样就得到三个不同的CRecordSet类对象CDBSet1, CDBSet2, CDSet3, 需要那个表的数据就用那个CDBSetX