void IDataAccess.CommandDataTable(DataTable dt, string ProcedureName, System.Data.Common.DbParameter[] para)
{
  _sqlConnection = new SqlConnection(strConnet);
  SqlDataAdapter MyAdapter = new SqlDataAdapter();
  MyAdapter.InsertCommand = new SqlCommand();
  MyAdapter.InsertCommand.CommandType = CommandType.StoredProcedure;
  MyAdapter.InsertCommand.CommandText = ProcedureName;
  MyAdapter.InsertCommand.Connection = _sqlConnection;
  foreach (SqlParameter parm in para)
    MyAdapter.InsertCommand.Parameters.Add(parm);
  MyAdapter.Update(dt);
  if (_sqlConnection != null)
  {
    _sqlConnection.Close();
  }
  GC.Collect();
}

public System.Data.DataTable CreateCartTable()
{
  System.Data.DataTable dt = new System.Data.DataTable();
  System.Data.DataRow dr;

  dt.Columns.Add(new System.Data.DataColumn("UserID"));
  dt.Columns.Add(new System.Data.DataColumn("ProductID"));
  dt.Columns.Add(new System.Data.DataColumn("Count"));

  IDataReader reader = new MssqlDataReader();
  string[] s = Request.QueryString["ids"].ToString().Split(new char[] { ',' });
  if (s != null && s.Length > 0)
  {
    for (int i = 0; i < s.Length; i++)
    {
      TempCart[] tc = reader.GetTempCartByID(Convert.ToInt32(s[i]));
      if (tc.Length > 0)
      {
        dr = dt.NewRow();
        dr[0] = Session["ID_Member"].ToString();
        dr[1] = tc[0].ProductID.ToString();
        dr[2] = tc[0].Count.ToString();
        dt.Rows.Add(dr);
      }
    }
  }
return dt;
}

void IDataWriter.AddCartMore(DataTable dt)
{
  IDataAccess access = DataCenter.GetDbConnection();
  SqlParameter[] para ={
    new SqlParameter("@UserID",SqlDbType.Int),
    new SqlParameter("@ProductID",SqlDbType.Int),
    new SqlParameter("@Count",SqlDbType.Int)
  };
  para[0].SourceColumn = dt.Columns[0].ColumnName;
  para[1].SourceColumn = dt.Columns[1].ColumnName;
  para[2].SourceColumn = dt.Columns[2].ColumnName;
  access.CommandDataTable(dt, "Sy_Cart_Add", para);
}

关于以DataTable形式批量写入数据的案例的更多相关文章

  1. HBase BulkLoad批量写入数据实战

    1.概述 在进行数据传输中,批量加载数据到HBase集群有多种方式,比如通过HBase API进行批量写入数据.使用Sqoop工具批量导数到HBase集群.使用MapReduce批量导入等.这些方式, ...

  2. MSSQL批量写入数据方案

    近来有一个项目Feature需要有批量写入数据的场景,正巧整理资料发现自己以前也类似实现的项目,在重构的同时把相关资料做了一个简单的梳理,方便大家参考. 循环写入(简单粗暴,毕业设计就这样干的)(不推 ...

  3. 使用XML向SQL Server 2005批量写入数据——一次有关XML时间格式的折腾经历

    原文:使用XML向SQL Server 2005批量写入数据——一次有关XML时间格式的折腾经历 常常遇到需要向SQL Server插入批量数据,然后在存储过程中对这些数据进行进一步处理的情况.存储过 ...

  4. 使用XML向SQL Server 2005批量写入数据——一次有关XML时间格式的折腾经历

    使用XML向SQL Server 2005批量写入数据——一次有关XML时间格式的折腾经历   原文:使用XML向SQL Server 2005批量写入数据——一次有关XML时间格式的折腾经历 常常遇 ...

  5. 【转载】 C#中手动创建一个DataTable对象并写入数据

    在C#操作集合数据的过程中,有时候需要手动创建一个DataTable对象,并手动设置DataTable对象的Columns列名等信息,最后再往手动创建的DataTable对象中写入相应的数据信息,此时 ...

  6. java连接mysql批量写入数据

    1.采用公认的MYSQL最快批量提交办法 public void index() throws UnsupportedEncodingException, Exception { //1000个一提交 ...

  7. Elasticsearch 5.4.3实战--Java API调用:批量写入数据

    这个其实比较简单,直接上代码. 注意部分逻辑可以换成你自己的逻辑 package com.cs99lzzs.elasticsearch.service.imp; import java.sql.Tim ...

  8. 使用bulkload向hbase中批量写入数据

    1.数据样式 写入之前,需要整理以下数据的格式,之后将数据保存到hdfs中,本例使用的样式如下(用tab分开): row1 N row2 M row3 B row4 V row5 N row6 M r ...

  9. python elasticsearch 批量写入数据

    from elasticsearch import Elasticsearch from elasticsearch import helpers import pymysql import time ...

随机推荐

  1. 使用模板时 error LNK2019: 无法解析的外部符号

    类模板是c++编译器指令 说明了如何生成类和成员函数 除非编译器实现了新的关键字export关键字 否则将模板成员函数放置在一个独立的实现文件中 将无法运行 因为模板不是函数 他们不能单独编译 模板必 ...

  2. 关于COUNT STOPKEY的工作机制(转载)

    SQL> select rownum rn ,a.* from cnmir.ew_auctions a where rownum<50000; Execution Plan-------- ...

  3. android启动页优化实践

    最近观看友盟统计发现App启动页跳出率很高,观看启动页的平均启动时间为2.8s,如下图: 所以一个很现实的问题就出来了,优化启动页面... (一)做了什么? 我们的启动页面主要用于展示启动页面,加载网 ...

  4. linux系统中内存爆满之后会如何?

    在使用python写程序的时候,发现一个可以无限迭代的迭代器,从而可以直接将系统中的内存占满,那么占满之后会发生什么呢? 1. 创建无限迭代,生成列表,如下: [root@python ~]# pyt ...

  5. C#语言基础02

    字符串:string s="ab";string s1="a\nb";//n:newline或者next的意思. string s="a\\b&quo ...

  6. Java中实现异常处理的基础知识

    Java中实现异常处理的基础知识 异常 (Exception):发生于程序执行期间,表明出现了一个非法的运行状况.许多JDK中的方法在检测到非法情况时,都会抛出一个异常对象. 例如:数组越界和被0除. ...

  7. delphi 中怎么知道某一个月有多少天

    if (month in (1,3,5,7,8,10,12)) return 31; else if (month in(4,6,9,11)) return 30; else if (year 是闰年 ...

  8. 获取子窗口中使用jQuery.data()设置的参数

    http://hyj1254.iteye.com/blog/643035 假设在iframe子窗口中设置了$('#mydata').data('key','hello world'); 那在包含ifr ...

  9. 用pdo实现的织梦后台留言板

    <?php //ini_set("display_errors", "On"); include("data/common.inc.php&qu ...

  10. 使用gdb调试多线程程序总结

    转:使用gdb调试多线程程序总结 一直对GDB多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧. 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程 ...