mssqlserver 批量插入示例
public bool DoQuestionSqlBulkCopy(DataTable dtDoQuestion,
string DoQuestionName,
DataTable dtDoQuestionText,
string DoQuestionTextName,
DataTable dtDoQuestionRemark,
string DoQuestionRemarkName)
{
using (System.Data.SqlClient.SqlBulkCopy sqlBC = new System.Data.SqlClient.SqlBulkCopy(DBConnectionConfig.ConnectionString))
{
#region 选项指量插入
if (dtDoQuestion.Rows.Count > 0)
{
//每10W条数据一个事物
sqlBC.BatchSize = dtDoQuestion.Rows.Count;
//超时时间
sqlBC.BulkCopyTimeout = 60;
//表名Users
sqlBC.DestinationTableName = "dbo." + DoQuestionName;
//字段对应,分表为原数据表字段名,和导入数据库的字段名
sqlBC.ColumnMappings.Add("Tid", "Tid");
sqlBC.ColumnMappings.Add("SId", "SId");
sqlBC.ColumnMappings.Add("OId", "OId");
sqlBC.ColumnMappings.Add("SN", "SN");
sqlBC.ColumnMappings.Add("Score", "Score");
sqlBC.ColumnMappings.Add("Selected", "Selected");
sqlBC.ColumnMappings.Add("OPTIME", "OPTIME");
//导入到数据库
sqlBC.WriteToServer(dtDoQuestion);
sqlBC.ColumnMappings.Clear();
}
#endregion
#region 文字选项批量保存
if (dtDoQuestionText.Rows.Count > 0)
{
//每10W条数据一个事物
sqlBC.BatchSize = dtDoQuestionText.Rows.Count;
//超时时间
sqlBC.BulkCopyTimeout = 60;
//表名DoquestionText
sqlBC.DestinationTableName = "dbo." + DoQuestionName;
//字段对应,分表为原数据表字段名,和导入数据库的字段名
sqlBC.ColumnMappings.Add("Tid", "Tid");
sqlBC.ColumnMappings.Add("SId", "SId");
sqlBC.ColumnMappings.Add("OId", "OId");
sqlBC.ColumnMappings.Add("SN", "SN");
sqlBC.ColumnMappings.Add("MId", "MId");
sqlBC.ColumnMappings.Add("Content", "Content");
sqlBC.ColumnMappings.Add("OPTIME", "OPTIME");
//导入到数据库
sqlBC.WriteToServer(dtDoQuestionText);
sqlBC.ColumnMappings.Clear();
}
#endregion
#region 文字选项批量保存
if (dtDoQuestionRemark.Rows.Count > 0)
{
//每10W条数据一个事物
sqlBC.BatchSize = dtDoQuestionRemark.Rows.Count;
//超时时间
sqlBC.BulkCopyTimeout = 60;
//表名DoquestionText
sqlBC.DestinationTableName = "dbo." + DoQuestionRemarkName;
//字段对应,分表为原数据表字段名,和导入数据库的字段名
sqlBC.ColumnMappings.Add("Tid", "Tid");
sqlBC.ColumnMappings.Add("SId", "SId");
sqlBC.ColumnMappings.Add("SN", "SN");
sqlBC.ColumnMappings.Add("Content", "Content");
sqlBC.ColumnMappings.Add("OPTIME", "OPTIME");
//导入到数据库
sqlBC.WriteToServer(dtDoQuestionRemark);
sqlBC.ColumnMappings.Clear();
}
#endregion
return true;
}
}
mssqlserver 批量插入示例的更多相关文章
- c#批量插入示例
var sql = @"Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcApplication1-20131029153010;I ...
- MongoDB批量更新和批量插入的方式
最近,在调试代码中发现向MongoDB插入或者更新文档记录时若是多条的话都是采用for循环操作的,这样的处理方式会造成数据操作耗时,不符合批量处理的原则:对此,个人整理了一下有关MongoDB的批量更 ...
- c# 数据库批量插入数据SqlBulkCopy 示例
/// <summary> /// 批量插入数据 /// </summary> public static void SqlBulkInsert(DataTable dt, s ...
- 批量插入数据, 将DataTable里的数据批量写入数据库的方法
大量数据导入操作, 也就是直接将DataTable里的内容写入到数据库 通用方法: 拼接Insert语句, 好土鳖 1. MS Sql Server: 使用SqlBulkCopy 2. MySql ...
- SQL语句-批量插入表(表数据插表)
批量插入表(表数据插表) ****1.INSERT INTO SELECT语句语句形式为:Insert into Table2(field1,field2,...) select value1,val ...
- Hibernate批处理操作优化 (批量插入、更新与删除)
问题描述 我开发的网站加了个新功能:需要在线上处理表数据的批量合并和更新,昨天下午发布上线,执行该功能后,服务器的load突然增高,变化曲线异常,SA教育了我一番,让我尽快处理,将CPU负载降低. 工 ...
- SQL批量删除与批量插入
批量删除: DELETE FROM MyTable WHERE ID IN (1,2); 批量插入: INSERT INTO MyTable(ID,NAME) VALUES(1,'123');INSE ...
- JDBC中的批量插入和乱码解决
字符集-乱码问题 用JDBC访问MySql数据库的时候,如果JDBC使用的字符集和MySql使用的字符集不一致,那么会导致乱码发生.解决办法当时是在使用JDBC的时候指定和数据库一样的字符集.我们可以 ...
- SqlBulkCopy与触发器,批量插入表(存在则更新,不存在则插入)
临时表:Test /****** 对象: Table [dbo].[Test] 脚本日期: 05/10/2013 11:42:07 ******/ SET ANSI_NULLS ON GO SET Q ...
随机推荐
- 全局程序集GlobalAssemblyInfo.cs进行版本控制(引)
原文出自:http://blog.csdn.net/oyi319/article/details/5753311 1.全局程序集GlobalAssemblyInfo.cs 我们编写的一个解决方案,通常 ...
- 推荐一个大文件查找工具---WizTree
DB备份.dump.电影等文件多了以后,经常遇到磁盘空间不够用的情况,日积月累本来清晰的目录结构找起来也很费劲,尤其是要查找删除无用的大文件.windows本身那差劲的搜索功能就不提了,从搜索引擎上查 ...
- HBase(二): c#访问HBase之股票行情Demo
上一章完成了c#访问hbase的sdk封装,接下来以一个具体Demo对sdk进行测试验证.场景:每5秒抓取指定股票列表的实时价格波动行情,数据下载后,一方面实时刷新UI界面,另一方面将数据放入到在内存 ...
- 查看.Net Framework版本的方法
乐博网最新补充(乐博网一步步教你如何最快查看本机.net framework的版本): 方法一: 第一步: 打开“我的电脑“,在地址栏输入 %systemroot%\Microsoft.NET\Fr ...
- 用Bouncy Castle的C#版API产生公钥和私钥
开源API链接地址:The Legion of the Bouncy Castle Bouncy Castle,简称为BC,原本是java的一个开源JCE提供者,后来也提供了C#版本的API,我下载其 ...
- JS和C# 互相调用与数据绑定问题
<asp:GridView ID="GridView1" runat="server" onselectedindexchanged="Grid ...
- 发布一个.net mvc站点遇到的问题及解决
1.先通过vs2012发布.net mvc项目,遇到问题是一路默认下来,提示发布已成功,但对应文件夹里没有任何文件 解决: 第一步,新建了一个文件夹 第二步,在[配置文件]步骤,新建配置文件 第三步, ...
- @RequesParam注解源码解析
- WebAPI 安全性 使用TOKEN+签名验证(下)
//根据请求类型拼接参数 NameValueCollection form = HttpContext.Current.Request.QueryString; string data = strin ...
- CF 120F Spider 树的直径 简单题
一个男孩有n只玩具蜘蛛,每只蜘蛛都是一个树的结构,现在男孩准备把这n只小蜘蛛通过粘贴节点接在一起,形成一只大的蜘蛛.大的蜘蛛也依然是树的结构.输出大的蜘蛛的直径. 知识: 树的直径是指树上的最长简单路 ...