不能增加字段每次只能增加一个字?COleVariant var;
m_pSet->Open(dbOpenDynaset,strQuery);
if (m_pSet->CanUpdate())
{
m_pSet->AddNew();
m_pSet->SetFieldValue(0,(COleVariant)m_strName);
m_pSet->SetFieldValue(1,(COleVariant)m_strAddress);
m_pSet->SetFieldValue(2,(COleVariant)m_strContact);
m_pSet->SetFieldValue(3,(COleVariant)m_strPhone);
m_pSet->Update();
}
无论我输入多长,只能在数据库保存一个字

解决方案 »

  1.   

    CDbManager dbSource;
    COleVariant value;

    //int decimal,sign; 
    int i=0;
    long longi=0;
    char buffer[20];
    CString stringTemp,stringTemp1;
    COleVariant tempFieldValue;
    if(dbSource.OPenOBDC("",false,false,_T("ODBC;DATABASE=logindata;UID=user;PWD=user;DSN=logindata"))==FALSE)
    {
    AfxMessageBox("打开数据库出错!");
    return ;
    } CDaoTableExt MBTab(dbSource.dbAlbum);
    CString strQuery;

    if(MBTab.IsOpen())
    MBTab.Close();
    strQuery= "select  *  from MouldingBoardTab";
    try
    {
    MBTab.Open(dbOpenDynaset, strQuery);
    if(!MBTab.IsBOF())
        MBTab.MoveFirst();
    }
    catch(CDaoException* e)
    {
    e->Delete(); 
    AfxMessageBox("打开数据库中表出错!");
    MBTab.Close();
            dbSource.CloseDB();
    return  ;
    }

    MBTab.AddNew();
        //longi=MBTab.GetItemCount()+1;
        //stringTemp.Empty();
    stringTemp="0";
    i=(int)longi;
    //_ltoa( longi, buffer, 10 );
    _itoa(i,buffer,10);
    stringTemp=stringTemp+buffer;
    tempFieldValue=COleVariant(stringTemp,VT_BSTRT);
    MBTab.SetFieldValue("ID",tempFieldValue);

    if(!MBName.IsEmpty())
    {
    tempFieldValue=COleVariant(MBName,VT_BSTRT);
    MBTab.SetFieldValue("MB_Name",tempFieldValue); MBNameBak=MBName;
    MBName.Empty(); }
    else
    {
    MessageBox("没给模板命名,请点模板新建输入模板名后再保存!", "模板提示", MB_OK+MB_ICONQUESTION);        MBTab.Close();
    dbSource.CloseDB(); return ;
    }

    m_EditTypeNo.GetWindowText(stringTemp);
    tempFieldValue=COleVariant(stringTemp,VT_BSTRT);
    MBTab.SetFieldValue("CarIDTypeNum",tempFieldValue);


    try
    {
    MBTab.Update();
    }
    catch(CDaoException* e)
    {
    //DisplayDaoException(e);
    e->Delete();
    AfxMessageBox("数据库数据更新出错!");
    MBTab.Close();
    dbSource.CloseDB();
    return;
    }