我现在有一.MDF 的数据库文件,一个处理这个文件中数据的C++程序,怎么才能将数据写入程序呢?
拜托了~~~~

解决方案 »

  1.   

    先把你的.mdf数据库文件复制到C盘里的programfiles->microsoft sql server->MSSQL->DATA里面,然后在SQLSERVER2000里面数据库->所有任务->添加数据库->选择刚刚复制到C盘里的.MDF文件。这样就可以了!
    如果还不行 你再到控制面板->管理工具->ODBC数据源-添加->SQL SERVER->......然后选择你的那个数据源!测试连接成功就行!
      

  2.   

    这个我已经连接好了,我现在不知道C++程序里面应该怎么写,好像要用到CRecondSet类等等!
      

  3.   

    数据库编程,网上N多ADO编程例子。Search一下。
    另外有个叫otl4.h的文件,是C++数据库编程很强悍的工具。基础部分,还是先自己学习下吧。
    给点思路,把数据库想象成一个仓库,你的C++程序就好象送货取货的工人,而仓库有个专门看守仓库的人员。取货工人取货时,首先到仓库那儿,跟守仓库的管理员申请取货,仓库管理员验证你的信息,确认你有取货的权限,然后按你提出的要求,把包装好的货物给你,你要使用货物中的某一部分时,得把包装拆掉,找到你要的货物,再拿来使用。
      

  4.   

    在你创建好ODBC数据源之后。
    首先,在InitInstance()中连接数据库
    CString strConnect;
    strConnect.Format("DSN=%s;UID=%s;PWD=%s"
                 ,m_strDSN//ODBC数据源中创建的名字,比如我创建的时候HeatMS
                 ,m_strUID//用户名
                 ,m_strPWD);//密码
    TRY 
    {
    m_db.OpenEx(strConnect,CDatabase::noOdbcDialog);
    }
    CATCH(CDBException,ex)
    {
    AfxMessageBox (ex->m_strError);
    AfxMessageBox (ex->m_strStateNativeOrigin);
    }
    AND_CATCH(CMemoryException,pEx)
    {
    pEx->ReportError();
    AfxMessageBox ("memory exception");
    }
    AND_CATCH(CException,e)
    {
    TCHAR szError[100];
    e->GetErrorMessage(szError,100);
    AfxMessageBox (szError);
    }
    END_CATCH 然后用CRecordset类读取记录CRecordset rs(&(theApp.m_db));
    CString sql;
    sql.Format("SELECT * FROM Admin_Info_Tab "
       "WHERE Admin_Name = '%s' AND (Admin_Password = '%s' AND Admin_Rank = '%s')",
       m_strName,m_strPassword,m_strRank);rs.Open(CRecordset::dynaset,sql);//打开记录
    if(!rs.IsEOF())//验证正确
    {
      if(m_strRank == "系统管理员")
        m_bSysOperator=TRUE;
      else 
        return ;
    }
    //、、、、、、、、、
    rs.Close();//关闭记录
      

  5.   

     db.OpenDb("abc");
        int i,j;
        
        for(i=0;i<la.M;i++)
          //for(j=0;j<la.L;j++)
          {
            //Data(m,l)        
            //Result(m,l)
            
            db.InsertDB("score","Base_score",la.Result(i,15) ,                     
                         
                         "Asset_score",la.Result(i,0),
                         "Stockholder_score",la.Result(i,1)
                         //"d23",Data(i,1),                     
                         
                         );这段程序里的“abc”应该是我的数据库的名字吗?谢谢!