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. JS面向对象组件(一) ---包装对象与原型链

    首先我们可以看看平时我们常用的 var str = 'hello'; alert(typeof str); //string var str = new String("hello" ...

  2. GreenDao官方文档翻译(下)

    第五篇 查询 查询会返回符合某些特定标准的实体.你可以使用原始的SQL定制查询语句,或者更好的方式:使用GreenDao的QueryBuilder API.该查询也支持lazy-loading的结果集 ...

  3. Oracle锁表(转载)

    锁定类型               行级锁               表级锁行级锁         ---- 行被排他锁定         ----在某行的锁被释放之前,其他用户不能修改此行    ...

  4. VC远控(三)磁盘显示

    服务端: 发送与接收命令 DWORD WINAPI SLisen(LPVOID lparam) { SOCKET client = (SOCKET)lparam; COMMAND command; w ...

  5. 链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。[手稿]

    消息 7302,级别 16,状态 1,第 1 行 无法创建链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.JET.OLEDB.4.0&qu ...

  6. CRF模型

    CRF的全称是Conditional Random Fields,由CMU教授John Lafferty 提出,原文标题:Conditional R andom Fields: Probabilist ...

  7. C++11 现代C++风格的新元素--简介

    C++11标准推出了很多有用的新特性,本文特别关注那些相比C++98更像是一门新语言的特性,理由是: 这些特性改变了编写C++程序使用的代码风格和习语[译注 1],通常也包括你设计C++函数库的方式. ...

  8. linux常用的一些命令(不断增加中)

    linux 下重启 apache: httpd -k restart 下面这些大多命令都可以在<鸟哥私房菜>的服务器中的“常用网络指令”和基础中的“程序与资源管理”中找到ps -aux 这 ...

  9. PySpark调用自定义jar包

    在开发PySpark程序时通常会需要用到Java的对象,而PySpark本身也是建立在Java API之上,通过Py4j来创建JavaSparkContext. 这里有几点是需要注意的 1. Py4j ...

  10. leetcode@ [273] Integer to English Words (String & Math)

    https://leetcode.com/problems/integer-to-english-words/ Convert a non-negative integer to its englis ...