批量插入ORACLE

public void MultiInsertData(DataSet ds)
{
  string connt = "Oracle的连接字符串";
  string sql = "select id,name,… from tablename";必须与ds中的一致
  DataTable dt = ds.Defaults[0];
  OracleConnection conn = new OracleConnection(connstr);
  OracleCommand cmd = new OracleCommand(sql, conn);
  conn.Open();
  OracleDataAdapter da = new OracleDataAdapter(sqlcmd);
  OracleCommandBuilder cb = new OracleCommandBuilder(sqlda);
  da.Update(dt);
  conn.Close();
  sqlconn.Dispose();
}
用这个批量进行导入,速度快,而且方便呀 

 

//dataTable批量插入ORACLE

string oracleCommandText = string.Format("SELECT MODELID, ResourceID, MODELSPATH FROM TB_Resources_PATH");
                OracleHelper.MultiInsertData(dataTable, oracleCommandText);

 

  public static void MultiInsertData(DataTable dataTable, string commandText)
        {
            using (OracleConnection oracleConnection = new OracleConnection(connectionString))
            {
                using (OracleCommand oracleCommand = new OracleCommand(commandText, oracleConnection))
                {
                    oracleConnection.Open();

                    using (OracleDataAdapter oracleDataAdapter = new OracleDataAdapter(oracleCommand))
                    {
                        OracleCommandBuilder oracleCommandBuilder = new OracleCommandBuilder(oracleDataAdapter);

                        //oracleDataAdapter.SelectCommand.CommandText = commandText;

                        //oracleCommandBuilder.RefreshSchema();

                        oracleDataAdapter.Update(dataTable);
                    }

                    oracleConnection.Close();
                }
            }
        }

posted @ 2011-10-11 21:51  jex  阅读(614)  评论(0)    收藏  举报