添加数据库时,弹出对话框“参数不足,提示是1”,这是哪里出了错。我用的是ACCESS数据库。

解决方案 »

  1.   

    CAddDlg dlg;
    if(dlg.DoModal()!=IDOK)
       return;
    try
    {
    if(Ifmr.IsOpen())
    Ifmr.Close();
    Ifmr.m_strFilter.Format("m_column1='%s'",dlg.m_edit1);
    Ifmr.Open(CRecordset::snapshot,NULL,CRecordset::none);
    if(!Ifmr.IsEOF())
    {
    Ifmr.Close();
    MessageBox("该企业存在");
    return;
    }
    Ifmr.AddNew();
    Ifmr.m_column1=dlg.m_edit1;
    Ifmr.m_column2=dlg.m_edit2;
    Ifmr.m_column3=dlg.m_edit4;
    Ifmr.m_column4=dlg.m_edit5;
    Ifmr.m_column5=dlg.m_edit6;
    Ifmr.m_column6=dlg.m_edit7;
    Ifmr.m_column7=dlg.m_edit8;
    Ifmr.m_column8=dlg.m_naru;
    Ifmr.m_column9=dlg.m_combo;
    Ifmr.m_column10=dlg.m_edit10;
    Ifmr.m_column11=dlg.m_faxing;
    Ifmr.m_column12=dlg.m_zuxiao;
            Ifmr.m_ID=dlg.m_edit3;
    if(Ifmr.CanUpdate())
    {
    Ifmr.Update();
    }
    if(Ifmr.IsOpen())
    Ifmr.Close();
    MessageBox("添加记录成功");
    }
    catch(CDBException *e)
    {
    e->ReportError();
    //e->Delete();
    return;
    }
      

  2.   

    m_column1
    表中是什么类型?
      

  3.   

    Ifmr.Open(CRecordset::snapshot,NULL,CRecordset::none);
    改成:
    Ifmr.Open(CRecordset::forwardOnly,NULL,CRecordset::none);
    试试..
      

  4.   


    很有可能是这出错了
    Ifmr.m_strFilter.Format("m_column1='%s'",dlg.m_edit1); 
    你的字段名不可能叫做m_column1吧
    这里要用表定义的字段名,如ID,Name等等