怎样将DataTable中数据批量导入到Access数据库中?

解决方案 »

  1.   

    如果表是现成的,那么可以用 DataAdaper + CommandBuilder
    如果要先生成表结构,就麻烦点
      

  2.   

    OleDbConnection   con=new   OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0;   Data   Source=d:\a.mdb; "); 
    OleDbCommand   cmd=new   OleDbCommand( "insert   into   Tb values(?,?,?) ",con); 
    con.Open(); 
    foreach   (DataRow   row   in   dt) 

            cmd.Parameters.Clear(); 
            cmd.Parameters.AddWithValue( "@no ",row[ "no "].ToString()); 
    ....
            cmd.ExecuteNonQuery(); 

    con.Close(); 
    或oledbcommandbuilder更新数据库
      

  3.   

    可是,这不是批量啊,速度太慢了,影响性能,我想要的是类似SqlBulkCopy的效果
      

  4.   

    多大的表?用data adapter是每行发送一条语句,楼主可能把操作放在一个事务里,性能会稍好一点,但是要达到SqlBulkCopy那样的速度恐怕不行。