增加一个记录后却覆盖了原表中的最后一个记录?请帮帮忙谢谢了
代码如下:
按增加记录调用的函数如下:
void CTRY11View::Onaddrecord()
{ //long m_lNewID=m_pSet->GetMaxID
m_pSet->AddNew ();
m_addre=true;
CEdit*pCtrl=(CEdit*)GetDlgItem(IDC_ID_EDIT);
int result=pCtrl->SetReadOnly (FALSE);
UpdateData(FALSE);
}
按更新记录,调用的函数如下:
void CTRY11View::Onupdate()
{
m_pSet->Edit();
UpdateData(TRUE);
if(m_pSet->CanUpdate ())
{ m_pSet->Update ();
}
}
void CTRY11View::OnUpdateupdate(CCmdUI* pCmdUI)
{
pCmdUI->Enable (!m_pSet->IsEOF ());
}
由于我是初学者,所以请详答,THANK YOU
问题点数:40、回复次数:6Top
1 楼jnxulei(石头)回复于 2003-08-01 08:10:30 得分 40
数据库打开后:
m_pSet->AddNew ();
//给数据库的各字段赋值
m_pSet->Update(); //调用AddNew或Edit后必须Update
你在m_pSet->Edit();后也应该对响应的字段赋值。
Top
2 楼andyone1(C++LOVER)回复于 2003-08-01 10:34:28 得分 0
不是很清楚........Top
3 楼andyone1(C++LOVER)回复于 2003-08-02 00:24:11 得分 0
UP
Top
4 楼weixxxp(想一想)回复于 2003-08-02 13:10:08 得分 0
按增加记录调用的函数如下:
void CTRY11View::Onaddrecord()
{ //long m_lNewID=m_pSet->GetMaxID
m_pSet->AddNew ();
m_addre=true;
CEdit*pCtrl=(CEdit*)GetDlgItem(IDC_ID_EDIT);
int result=pCtrl->SetReadOnly (FALSE);
UpdateData(FALSE);
if(m_pSet->CanUpdate ())
{ m_pSet->Update ();
}
}
Top
5 楼andyone1(C++LOVER)回复于 2003-08-05 15:18:43 得分 0
不行啊.
Top
6 楼andyone1(C++LOVER)回复于 2003-08-05 15:23:54 得分 0
TO WEIXXXP:
一看就知道不行的啦,一按ADDNEW的按钮就调用整个函数的啦,是不是想把空数赋给新记录啊
Top



