在vs2017中使用Oralcebulkcopy向oralce11g数据库批量插入数据

 

vs2017运行于64位win10环境下。

一.下载并安装ODAC 11.2 Release 5 and Oracle Developer Tools for Visual Studio (11.2.0.3.20)

下载地址为:https://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html。

下载后得到ODTwithODAC1120320_32bit.zip   文件,大小为229 MB,压缩并安装。

二.在项目中引用Oracle.DataAccess.dll。

三.代码

public static void BulkToDB(DataTable dt, string targetTable)
        {
            string err = "大批量插入时产生错误";
            OracleConnection conn = new OracleConnection(conStr);
            //System.Data.OracleClient.OracleConnection conn = new OracleConnection(conStr);
            if (conn.State != ConnectionState.Open)
            { conn.Open(); }
            OracleBulkCopy bulkCopy = new OracleBulkCopy(conn, OracleBulkCopyOptions.Default);
            bulkCopy.BatchSize = 100000;
            bulkCopy.BulkCopyTimeout = 260;
            bulkCopy.DestinationTableName = targetTable;
 
            try
            {
                if (conn.State != ConnectionState.Open)
                {
                    conn.Open();
                }
                // conn.Open();
                if (dt != null && dt.Rows.Count != 0)
                {
                    bulkCopy.WriteToServer(dt);
 
                }
            }
            catch (Exception ex)
            {
                Log.WriteLog(err, ex);
            }
            finally
            {
                conn.Close();
                if (bulkCopy != null)
                    bulkCopy.Close();
            }
 
        }
---------------------
注:代码引自https://blog.csdn.net/u013058618/article/details/51504231


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章