MFC对数据库ODBC进行更新怎么总是做不了呢。

MFC对数据库ODBC进行更新怎么总是做不了呢。,第1张

CDatabase m_db

m_db.Open("数据库")

m_db.Open(NULL,FALSE,FALSE,"ODBCDSN=UID=PED=")

m_db.Open(NULL)

CString str

str.Format("update studentgrade set courseid='%s',score=%s,credit=%s,makeup=%s,teachers='%s' where num='%s'",m_subject1,m_score,m_credit,m_makeup,m_teacher,m_num1)

m_db.Execute(str)

给你个实例 只是一部分 应该有你要的全部东西了 至于变量与控件关联,用一下VC6.0的winzard就 会明白了快捷键 ctrl+w

//////////////cpp部分

BOOL Subjectdlg::OnInitDialog()

{

CDialog::OnInitDialog()

// TODO: Add extra initialization here

CString sqlStr

sqlStr="SELECT * FROM tb_subject"

mysubjectset = new Subjectinfo(&((CStudentsysApp*)AfxGetApp())->m_DB)

if(!mysubjectset->Open(AFX_DB_USE_DEFAULT_TYPE,sqlStr)) //打开数据表

{

AfxMessageBox("tb_subject表打开失败!")

}

return TRUE // return TRUE unless you set the focus to a control

// EXCEPTION: OCX Property Pages should return FALSE

}

bool Subjectdlg::DisplayRecord()

{

if(mysubjectset->IsEOF()&&mysubjectset->IsBOF()) //判断是否移动到了开头和结尾

{

m_subjectname = ""

m_subjectid = ""

}

else

{

if(mysubjectset->IsBOF()) //移动到了开头,就向后移动

{

mysubjectset->MoveNext()

}

else //否则前移

{

if(mysubjectset->IsEOF())

{

mysubjectset->MovePrev()

}

}

}

m_subjectname = mysubjectset->m_subject//对应变量赋值

m_subjectid = mysubjectset->m_code

UpdateData(FALSE)

return TRUE

}

////////////那几个指针

Subjectinfo* mysubjectset

Subjectinfo* mysubjectset_find

Subjectinfo* myclass_subject_findref

///////////

subjectinfo是连接数据源的那个类


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9894514.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存