SqlBulkCopy(大数据量拷贝)
/// 批量执行SqlBulkCopy数据迁移操作
/// </summary>
/// <param name="dtblSource">数据源</param>
/// <param name="strPreSqlSentence">执行前需要执行的脚本,如先清空表等,可为空</param>
/// <param name="strDestinationTablesName">目标数据库表名称</param>
/// <returns></returns>
public static bool ExeSqlBulkCopy(DataTable dtblSource, string strPreSqlSentence,string strDestinationTablesName)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
bool blReturnValue = false; connection.Open();
//请在插入数据的同时检查约束,如果发生错误调用 sqlbulkTransaction事务
SqlTransaction sqlbulkTransaction = connection.BeginTransaction();
if (strPreSqlSentence != "")
{
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = connection; sqlCmd.Transaction = sqlbulkTransaction;
try
{
sqlCmd.CommandText = strPreSqlSentence; sqlCmd.ExecuteNonQuery(); blReturnValue = true;
}
catch (Exception exc)
{
Log.WriteLog("批量插入前语句失败", exc); sqlbulkTransaction.Rollback(); connection.Close(); return false;
}
}
SqlBulkCopy BulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.CheckConstraints, sqlbulkTransaction);
BulkCopy.DestinationTableName = strDestinationTablesName; BulkCopy.BulkCopyTimeout = 1200;
try
{
BulkCopy.WriteToServer(dtblSource); sqlbulkTransaction.Commit(); blReturnValue = true;
}
catch (Exception exp)
{
sqlbulkTransaction.Rollback(); Log.WriteLog("批量插入语句失败", exp); blReturnValue = false;
}
finally
{
BulkCopy.Close(); connection.Close();
}
return blReturnValue;
}
}
SqlBulkCopy(大数据量拷贝)相关推荐
- gRPC大数据量消息传递方法
1.摘要 本文探讨了gRPC中大数据量消息的传输限制及相应的两个解决方法:修改限制值大小和流式数据传输,并给出了gRPC C++版本下采用流式数据传输的示例代码,在该示例中同时说明了如何在Visual ...
- Java实现excel大数据量导入
情景分析: 通常我们通过poi读取excel文件时,若在用户模式下,由于数据量较大.Sheet较多,很容易出现内存溢出的情况 用户模式读取excel的典型代码如下: FileInputStream f ...
- Mysql数据库平滑扩容解决高并发和大数据量问题
目录 1 停机方案 2 停写方案 3 平滑扩容之双写方案(中小型数据) 4 平滑扩容之2N方案大数据量问题解决 4.1 扩容问题 4.2 解决方案 4.3 双主架构思想 4.4 环境部署 4.4.1 ...
- 大数据量的Excel导入和导出
大数据量的Excel导入和导出 涉及到的技术 poi:使用SXSSFWorkbook,对数据进行分页且批量写入到磁盘(可以是任何outputsteam),减少数据在内存中的存储 easyExcel:从 ...
- 金融行业云迁移实践 HyperMotion助力江苏农信银行实施金融专有云创新项目,实现跨地域,多网点,大数据量迁移上云
项目概述 当前,互联网技术将经济社会带入了"平台经济"的时代.<银行业信息科技"十三五"发展规划监管指导意见>要求,"十三五"期 ...
- iMobile中加载大数据量的矢量数据性能优化方法有哪些
作者:xinxin 随着移动技术的发展,GIS行业中移动项目越来越多.在移动应用中不仅要对接在线的服务数据,还要加载各种本地的业务数据,GIS数据的量一般很大,而移动设备的内存有限,加载本地大数据量的 ...
- spring Batch实现数据库大数据量读写
spring Batch实现数据库大数据量读写 博客分类: spring springBatchquartz定时调度批处理 1. data-source-context.xml Xml代码 &l ...
- 1.3.8 excel for mysql_实时生成并下载大数据量的EXCEL文件,用PHP如何实现
有一个这样的需求,通过选择的时间段导出对应的用户访问日志到excel中, 由于用户量较大,经常会有导出50万加数据的情况.而常用的PHPexcel包需要把所有数据拿到后才能生成excel, 在面对生成 ...
- 数据蒋堂 | 这个产品能支持多大数据量?
作者:蒋步星 来源:数据蒋堂 本文共500字,建议阅读5分钟.似乎是支持数据量越大,产品就越厉害. 经常有用户会问这个问题,你家的产品能处理多大数据量?似乎是这个值越大产品就越牛. 这个问题,其实没多 ...
- MySQL数据库如何解决大数据量存储问题
FROM http://blog.csdn.net/likika2012/article/details/38816037 各位高手您们好,我最近接手公司里一个比较棘手的问题,关于如何利用MySQL存 ...
最新文章
- Kali 更新源、更新系统和软件、删除软件和配置
- IntelliJ IDEA连接数据库时报错:服务器返回无效的时区,需要设置 ‘‘serverTimezone‘‘ 属性。
- 第二十七期:网络爬虫程序员被抓,我们还敢爬虫吗?细数那些Java爬虫技术
- 动态规划——变形的杨辉三角形
- 80 个例子,彻底掌握Python日期时间处理
- uc的剪切板能关掉吗_创意手工 | 一张纸折出专属礼品袋,漂亮简单还实用!你爱了吗?!...
- 疯狂涨知识!我凭借这份PDF的复习思路,吊打面试官
- OPERA团队一 开功能配参数
- Centos 安装 L2tp
- 不读后悔:风口上的仓储自动化
- 地图可视化开发技巧:geojson转svg后再转emf格式插入ppt实现编辑的解决方案
- 测试手机端APP时,模拟网速慢的情况
- linux下开机自动启动文件夹在哪里设置,Linux设置开机自启动的方法【linux学习教程】...
- 计算机查看图片的打开方式,windows10电脑怎么在右键菜单打开方式添加照片查看器...
- NACOS 2.0.3 集群客户端连接出现503 500异常处理 踩坑记录
- SpringBoot集成Swagger文档及自定义访问路径
- GCD Expectation ZOJ - 3868 (容斥)
- Cocos Creator 基于 Spine 动画的 AVATAR 换装系统优化
- 【vm】虚拟机版本管理
- 网络三.网络传输设备:集线器,交换机,路由器
热门文章
- paip.软件开发之COOKIE调试
- paip.php调试不能显示局部变量内容with xdebug
- 生于凛冬的私募资产配置基金管理人能否秽土转生?
- 从毫无交集到走向融合,AI+区块链才是改变世界的黑科技!
- Julia: PyPlot的一些用法整理
- 阿里云宗志刚:云网一体,新一代洛神云网络平台
- 一场云计算基础设施的饕餮盛宴 --- OpenStack柏林峰会见闻及感想
- 【优化算法】多跟踪器优化算法 (MTOA)【含Matlab源码 1090期】
- java field setfont_java高手请进!
- Cannot read property 'style' of null 问题