m_pSet->Edit();
m_pSet->m_name=str;
m_pSet->Update();
之后m_pSet->delete就会出现异常,如果是添加m_pSet->AddNew();
if(m_pSet->CanUpdate())
m_pSet->Update(); m_pSet->Requery();
m_pSet->MoveLast();
之后m_pSet->delete();

解决方案 »

  1.   

    m_pSet->Edit();
    m_pSet->m_name=str;
    m_pSet->Update();
    之后m_pSet->delete就会出现异常,如果是添加m_pSet->AddNew();
    if(m_pSet->CanUpdate())
    m_pSet->Update(); m_pSet->Requery();
    m_pSet->MoveLast();
    之后m_pSet->delete();
    就没出现异常了
      

  2.   

    首先应该让系统明确知道应该删除哪条语句.
    LZ在调用UPDATE后,游标发生改变,这样就系统就不知道该删除哪一条了.
    而如果调用m_pSet->MoveLast()明确告诉程序,你需要删除这条记录,所以没有问题.
    我的建议: 
    最好使用delete from ** where ** = "";这种方式明确的删除,这样就不会有莫名其妙的错误了.