C# 调用Adodb对Access数据库执行批量插入

public void BatchInsertIntoAccess(DataTable dt)
        {
            ADODB.Connection cn;
            ADODB.Recordset rs;
            string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\FileTmp\MMSCRM.mdb;Persist Security Info=False";
            cn = new ADODB.Connection();
            cn.ConnectionString = strConn;
            //打开数据库
            try
            {
                //cn.Open(strConn, "sa", "password", -1);
                cn.Open(strConn);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                Console.WriteLine(cn.State);
            }
            //打开记录集
            rs = new ADODB.Recordset();
            rs.LockType = ADODB.LockTypeEnum.adLockPessimistic;
            rs.CursorType = ADODB.CursorTypeEnum.adOpenDynamic;
            rs.Open("MSG_Outbox",cn);
            //如果记录集为空,输出一个错误信息
            for (int i = 0; i < 10;i++ )
            {
                rs.MoveLast();
                object missing = System.Reflection.Missing.Value;
                rs.AddNew(missing, missing);

                //第0列为自增列,忽略
                rs.Fields[1].Value = "2";
                rs.Fields[2].Value = "";
                rs.Fields[3].Value = "11111111";
                rs.Fields[4].Value = "0";
                rs.Fields[5].Value = "打发打发dfadafdadafde";
                rs.Fields[6].Value = "";
                rs.Fields[7].Value = "2016/10/1 22:23:48";
                rs.Fields[8].Value = 12;
                rs.Update();
            }

            rs.Close();
            cn.Close();

        }
时间: 2024-12-27 23:13:21

C# 调用Adodb对Access数据库执行批量插入的相关文章

各种数据库的批量插入操作_Oracle

最近工作中需要优化以前各种的Excel批量导入功能,目前将能优化的方面做个记录. 选用技术: 目前.Net可以访问Oracle常用的Dll,有三种: 微软自带的 System.Data.OracleClient Oracle 公司提供的 Oracle.DataAccess System.Data.OleDb  通过比对以后,使用第二种,其原因如下: 访问数据库方式 优点 缺点 System.Data.OracleClient 操作简单,无论32,64直接引用即可使用 微软在4.0之后不会对其更新

经过多次的测试,最终写出了access数据库一次插入多条数据

OleDbConnection inconn = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source=DB.mdb"); inconn.Open(); OleDbTransaction myTrans = inconn.BeginTransaction(); OleDbCommand incmd = inconn.CreateCommand(); incmd.Transaction = myTrans; s

sql Server如何执行批量插入和批量删除

平时我们sql server执行查询语句都是通过 insert into 表名(字段名,字段名) values(插入值,插入值) --单条插入语句--- insert into Reader(readerName) values('测试') 那如何进行批量插入呢?除了多条insert 语句组合而成,还有其他吗? --Sql Server 的批量添加--- --方式1:多条insert语句插入---- insert into Reader(readerName) values('读者1'); in

如何执行批量插入?

首先,创建一个简单的 insert 语句: <insert id=”insertname”> insert into names (name) values (#{value}) </insert> 然后在 java 代码中像下面这样执行批处理插入: list < string > names = new arraylist(); names.add(“fred”); names.add(“barney”); names.add(“betty”); names.add(

C#:几种数据库的大数据批量插入 - faib

在之前只知道SqlServer支持数据批量插入,殊不知道Oracle.SQLite和MySql也是支持的,不过Oracle需要使用Orace.DataAccess驱动,今天就贴出几种数据库的批量插入解决方法. 首先说一下,IProvider里有一个用于实现批量插入的插件服务接口IBatcherProvider,此接口在前一篇文章中已经提到过了. /// <summary> /// 提供数据批量处理的方法. /// </summary> public interface IBatch

C# 几种数据库的大数据批量插入

转载:http://www.cnblogs.com/luluping/archive/2012/08/09/2629515.html 在之前只知道SqlServer支持数据批量插入,殊不知道Oracle.SQLite和MySql也是支持的,不过Oracle需要使用Orace.DataAccess驱动,今天就贴出几种数据库的批量插入解决方法. 首先说一下,IProvider里有一个用于实现批量插入的插件服务接口IBatcherProvider,此接口在前一篇文章中已经提到过了. /// <summ

几种数据库的大数据批量插入【转】

在之前只知道SqlServer支持数据批量插入,殊不知道Oracle.SQLite和MySql也是支持的,不过Oracle需要使用Orace.DataAccess驱动,今天就贴出几种数据库的批量插入解决方法. 首先说一下,IProvider里有一个用于实现批量插入的插件服务接口IBatcherProvider,此接口在前一篇文章中已经提到过了. /// <summary> /// 提供数据批量处理的方法. /// </summary> public interface IBatch

Access数据库 更新 "延时" 现象

最近发现 Access数据库执行Update或Delete操作成功后,执行select回来的数据未更改.打开数据库查看时却发现已更改,再次执行select 后却发现正常了. 经调试发现:Access数据库Update操作有一定的"延迟",需要执行一定时间才会正常更改. 没查到具体原因.记录下 暂时 用 Thread.Sleep(1000):来暂时解决.

使用存储过程向数据库批量插入数据

<一> 前言 最近有个需求,需要向数据库并发批量插入数据. 最开始使用存储过程,类似这样的:  delimiter //   CREATE PROCEDURE load_part_tab()  begin      declare v int default 0;      while v < 8000000      do          insert into part_tab          values (v,'testing partitions',adddate('199