增加记录:
void CMy3View::OnButtonAddnew() 
{
m_pSet->AddNew();
m_pSet->SetFieldNull(&(m_pSet->m_name), FALSE);
m_pSet->m_name="钱七";m_pSet->SetFieldNull(&(m_pSet->m_sex),FALSE);
m_pSet->m_sex="女";m_pSet->SetFieldNull(&(m_pSet->m_laborage), FALSE);
m_pSet->m_laborage="1200";m_pSet->SetFieldNull(&(m_pSet->m_job), FALSE);
m_pSet->m_job="教授";m_pSet->Update();m_pSet->Requery();
}
删除记录:
m_pSet->Delete();
if(!m_pSet->IsEOF())
m_pSet->MoveNext();
else
m_pSet->SetFieldNull(NULL);
m_pSet->Requery();虽然能达到添加删除的目的但不能按我预期的那样。删的时侯总是把不该删的删了添加的时侯总是添加得莫名其妙。帮我看看啊,有什么不妥???
能不能帮我指了我对那些地方的理解有错误?
你是怎么理解的?
谢谢了

解决方案 »

  1.   

    m_pSet->SetFieldNull(&(m_pSet->m_name), FALSE);  这句用不上
    m_pSet->Requery(); ——还有你是绑定记录集吗?
      

  2.   

    看来应该是绑定的了
    我addnew()以后没有用requery(),没有出现什么问题
    你也把requery()去掉试试?~~
    而且不懂你每个赋值前都加上m_pSet->SetFieldNull(&(m_pSet->m_name),FALSE);
    这句话有什么意思?
      

  3.   

    是不是在refresh的时候,从新排序了
      

  4.   

    m_pSet->MoveLast();
    m_pSet->AddNew();
    m_pSet->m_name="钱七";
    m_pSet->m_sex="女";
    m_pSet->m_laborage="1200";
    m_pSet->m_job="教授";
    m_pSet->Update();//delete
    m_pSet->MoveFirst()
    while(!m_pSet->IsEOF())
    {
       if(m_pSet->m_name==your creterion)
          m_pSet->Delete();
       m_pSet->MoveNext();
    }