将sqlserver数据库中的数据直接导入到access数据库中,下面的代码怎么执行了没有反应,
请问高手,有没有其他更好的办法直接将sqlserver数据库中的数据直接导入到access数据库中
我用dtswiz试过,但是要到服务器上操作。SqlDataAdapter sqlAdp = new SqlDataAdapter( "SELECT * FROM T_storehouse" , sconn) ;
OleDbDataAdapter accessAdp = new OleDbDataAdapter( "SELECT * FROM T_storehouse" , aconn) ;OleDbCommandBuilder cb = new OleDbCommandBuilder(accessAdp);

DataSet ds = new DataSet ( ) ;
sqlAdp.Fill(ds,"T_storehouse");
accessAdp.Update(ds,"T_storehouse");

解决方案 »

  1.   

    你可以定义两个DS,然后把ACCESS的DS赋值给SQL SERVER的DS.
      

  2.   

    你好像说是这样吧,还是没有反应哦SqlDataAdapter sqlAdp = new SqlDataAdapter( "SELECT * FROM T_storehouse" , sconn) ;
    OleDbDataAdapter accessAdp = new OleDbDataAdapter( "SELECT * FROM T_storehouse" , aconn) ;OleDbCommandBuilder cb = new OleDbCommandBuilder(accessAdp);
    DataSet ads = new DataSet ( ) ;
    DataSet sds = new DataSet ( ) ;sqlAdp.Fill(sds,"T_storehouse");
    accessAdp.Fill(ads,"T_storehouse");ads = sds;
    accessAdp.Update(ads,"T_storehouse");
      

  3.   

    其实有更简单的方法啊 
    ---------------
    string strMdbPath = @"c:\a.mdb";
    SqlConnection conSqlServer = new SqlConnection("...");
    SqlCommand cmdExport = new SqlCommand("INSERT INTO OPENROWSET('Microsoft.Jet.OleDb.4.0','" + strMdbPath + "';'admin';'',T_storehouse) SELECT * FROM T_storehouse", conSqlServer);
    cmdExport.ExecuteNonQuery();
    conSqlServer.Close();
      

  4.   

    这个sql语句可以生成a.mdb数据库文件,但是生成的文件在sqlserver服务器本地,而不是在程序运行的计算机上。
      

  5.   

    我的方法不是生成 MDB文件,而是将现有数据插入到 已经存的 MDB 文件的 已存在的 表中
      

  6.   

    你只要从WEB服务器上,可以访问 那个 MDB 文件,就可以执行我的代码,我那个只是个例子,你自己要变通
      

  7.   

    谢谢alexzhang00,我的程序是C/S模式的
      

  8.   

    C/S 模式一样的, 只要你能访问那个 MDB 文件,就可以实现
      

  9.   

    还是顶一下吧,运行的程序没有反应ads中的数据已经更新,为什么数据库不能更新
    SqlDataAdapter sqlAdp = new SqlDataAdapter( "SELECT * FROM T_storehouse" , sconn) ;
    OleDbDataAdapter accessAdp = new OleDbDataAdapter( "SELECT * FROM T_storehouse" , aconn) ;OleDbCommandBuilder cb = new OleDbCommandBuilder(accessAdp);
    DataSet ads = new DataSet ( ) ;
    DataSet sds = new DataSet ( ) ;sqlAdp.Fill(sds,"T_storehouse");
    accessAdp.Fill(ads,"T_storehouse");ads = sds;
    accessAdp.Update(ads,"T_storehouse");