在SSIS包中的事务处理】的更多相关文章

在处理SSIS包的数据ETL操作过程中,我们经常遇到的一个问题就是一系列步骤在运行的过程中,如果中间的一个步骤失败了,那么我们就需要清理前面已经运行过的步骤所产生的数据或者结果,这往往是一个很头疼的过程.那么在SSIS的Package中是否可以实现事务机制呢? 我们知道基于事务我们可以保证在一系列操作下的各个步骤,它们要么全部成功,要么全部失败.这里将介绍在SSIS的Package中一个比较简单的实现方法. 首先,建立一个测试表,这个表里会有一个自增的主键标识,然后分别有一个文本和数字类型的字段…
2010~2011年经常使用SSIS包采集加工数据,后来换了工作就很少使用.最近又开始用那玩意采集数据,努力回想之前是怎样操作的,网上各种找各种纠结.趁这次使用记录下日常操作步骤,以备以后不时之需. --环境SQL Server2012.VS2010(安装数据库时默认会安装)下载示例数据库AdventureWorks2012,还原数据库并创建目标表. --还原数据库 CREATE DATABASE [AdventureWorks2012] ON (FILENAME=N'D:\SQL2012\MS…
使用SSIS做ETL的过程中会遇到各种各样的错误,对于一些大数据量的Job失败以后我们不希望重新运行,因为重新运行的时间开销是非常大的,我们只希望从失败的部分开始运行,这样可以省去很多的时间. SSIS提供了Checkpoints的功能,可以捕获检查点文件中的重新启动点.失败的容器类型以及功能(例如事务)的实现都会影响在检查点文件中所记录的重新启动点.检查点文件中还捕获变量的当前值. 创建SSIS的时候需要制定 checkpoint文件目录,checkpoint的信息会被保存到这个xml文件.当…
使用SSIS做ETL的过程中会遇到各种各样的错误,对于一些大数据量的Job失败以后我们不希望重新运行,因为重新运行的时间开销是非常大的,我们只希望从失败的部分开始运行,这样可以省去很多的时间. SSIS提供了Checkpoints的功能,可以捕获检查点文件中的重新启动点.失败的容器类型以及功能(例如事务)的实现都会影响在检查点文件中所记录的重新启动点.检查点文件中还捕获变量的当前值. 创建SSIS的时候需要制定 checkpoint文件目录,checkpoint的信息会被保存到这个xml文件.当…
在ssis 包中使用FTP 实际上很简单, 直接拿一个FTP控制流(FTP 任务) ,配置一下FTP 服务器就可以了, 但是当我想在SQL Server Job 中使用这个功能时却报了个错(如下), An error occurred in the requested FTP operation. Detailed error description: The password was not allowed 意思就是密码错误, 可是我在 BIDS(Business intelligence d…
原文:SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器 上期回顾: SSIS从理论到实战,再到应用(2)----SSIS包的控制流   首先我们来看看包里面的变量 SSIS包变量分为两种,一种是系统的内置变量,是一个SSIS包初使化都会自带的,一种是用户自己定义的变量. 在SSIS包中,常用的变量的类型包含以下:Int32,String,Boolean,DateTime,Object...... 二,让我们来看看包里面的约束(线) 如图中所示的线就是约束,官方的解释是…
原文:图解:SQL Server SSIS包和job的部署攻略 以下将建立一个SQL Server SSIS包 然后在job中使用这个包,并将job部署到目标机器 1. 首先建立ssis包,使用sql server 自带的business intelligence development stdio即可定制自己所需的SSIS package 2. 将SSIS包中需要动态改变的配置导出config文件,比如数据库的连接字符串等, 在包的work flow的空白处右键,选择包配置 3. 勾选启用包配…
本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx).包配置文件(*.dtsconfig)以及包的其它相关文件,打包成一个安 装文件,以利于到其它计算机安装与部署. 下面我们以前面介绍的IisLog Solution 为例,来详细介绍包部署的完整过程. (-)生成安装部署文件.  在SQL Server Business Intelligence D…
本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx).包配置文件(*.dtsconfig)以及包的其它相关文件,打包成一个安装文件,以利于到其它计算机安装与部署. 下面我们以前面介绍的DEPJ1200 为例,来详细介绍包部署的完整过程. (-)生成安装部署文件.  在SQL Server Business Intelligence Developme…
默认情况下,同时安装了 64 位和 32 位版本的 Integration Services 命令提示实用工具的 64 位计算机将在命令提示符处运行 32 位版本.运行 32 位版本的原因是:在 PATH 环境变量中,32 位版本的目录路径显示在 64 位版本的目录路径之前.(通常,32 位目录路径是 <驱动器>:\Program Files(x86)\Microsoft SQL Server\100\DTS\Binn,而 64 位目录路径是 <驱动器>:\Program File…
原文:SQL点滴9-SQL Server中的事务处理以及SSIS中的内建事务 我们可以把SSIS中的整个package包含在一个事务中,但是如果在package的执行过程中有一个表需要锁定应该怎么处理呢?SSIS内建的事务处理可以解决这个问题.在此之前首先来熟悉一下SQL Server中的事务的概念. 事务 SQL Server中的事务是单个的工作单元.如果某一事务成功,则在该事务中进行的所有数据修改均会提交,成为数据库中永久的组成部分.如果事务遇到错误且必须取消或回滚,则所有的数据修改均被清除…
一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG 部分,在这里分享一下给大家,希望对大家在设计 ETL 的日志系统时有所启发和帮助.当然在这里要区分 Logging 和 Auditing 的区别,Logging 主要用来记录发生了什么事情,Auditing 侧重描述过程中产生的数据量,新增了多少,修改了多少等记录条数.本文主要讲解 Log 部分,…
在SQL Server中可以使用dtexec命令运行SSIS包(2005以上版本),当然也可以通过系统过程:xp_cmdshell调用dtexec运行SSIS包. 具体操作步骤如下: 1.首先,当然是要在Business Intelligence中设计好包,并调试通过. 2.然后,有两种方式可以在SQL Server中使用命令运行SSIS包 第一种是直接执行ssis包文件,命令如: exec xp_cmdshell 'dtexec /f "c:\test.dtsx"' 第二种是将包文件…
最近碰到了一个众所周知的32bit的 SSIS 包在64bit的SQL Server环境的执行问题. 我看了一些解决方案,比如修改在SSDT里面修改 debug 选项(Run64BitRuntime = false) 或者建立一个job执行的时候强制以32bit方式运行. 不过我发现这些方式并不合适大型的自动化环境. 你可能在测试SSIS包的候会用这些方法 ,但是你部署到SSIS服务器的时候不一定想要这么做. 我想还有一个方法就是建立一个job, 强制包为32bit执行模式.然后建立一个脚本更改…
一直做的SSIS项目,突然在生成项目的时候没有反应,crtl + alt +o 提示:无法从项目中获取SSIS包的列表,发现是最近的包没有设计数据源, 解决思路:检查最近的包,挨个运行一遍,看看有没有问题.…
1.概述 作用:用于在过程,函数,和包中执行SQL事务处理语句. 2.包的组成 1).read_only说明:用于开始只读事务,其作用与SQL语句SET TRANSACTION READ ONLY完全相同,该过程必须是事务开始的第一条语句.语法:dbms_transactino.read_only 2).read_write说明:用于开始读写事务,其作用与SQL语句SET TRANSACTION READ WRITE完全相同,该过程必须是事务开始的第一条语句.语法:dbms_transactin…
本文转自:http://technet.microsoft.com/zh-cn/library/ms141747.aspx 为了保护 Integration Services 包中的数据,可以设置保护级别,以帮助仅保护包中的敏感数据或包中的所有数据. 另外,可以采用密码或用户密钥对数据加密,或依靠数据库对数据进行加密. 另外,您对包所采用的保护级别不一定是静态的,而是在包的整个生命周期内可能变化. 通常,您可以在包开发阶段设置一个保护级别,在包部署阶段设置另一个保护级别.  注意 除了本主题中所…
方式一: 在BIDS里直接跑. 这个BIDS指的就是SQL Server Business Intelligence Development Studio,对于.net开发者来说它就是Visual Studio.以下是老外文章中的步骤: 首先,包设计完成之后,右键解决方案浏览器,选择属性. 在包配置界面中,Build旁边的OutputPath选择包被Build之后的存放路径,确认后点击OK结束配置. 然后在解决方案管理器中,右键点击要运行的包,选择Set as StartUp Object. 最…
有时候不仅仅需要在内部执行package包,多数情况下,是需要在外部进行调用,比如,需要一个批处理或者控制台程序进行外部调用SSIS包,而往往这个包所配置的连接字符串是经过加密处理的,所以当外部调用SSIS包的时候,一方面需要给包赋值连接字符串,一方面传递其他参数,其实给包赋值就是往包里传递参数. 当遇到问题在网上进行查找解决方案的时候,有时候答案很零碎,或者只是部分代码,浅藏辄止,而有的处理方法都是很老的版本所用到的,所以这很鸡肋.当我写随笔时,总是反复修改,亲力亲为,确保完整代码,确保测试通…
最新项目稍有空隙,开始研究SQL Server 2012和2014的一些BI特性,参照(Matt)的一个示例,我们开始体验SSIS中的CDC(Change Data Capture,变更数据捕获). 注:如果需要了解关于SQL Server 2008中的CDC,请看这里http://www.cnblogs.com/downmoon/archive/2012/04/10/2439462.html),本文假定读者对CDC的工作方式已有所了解.^_^. 我们分三步完成实例: 1.准备基础数据: 2.设…
笔记:sqlserver 在执行数据导入导出的时候,可以选择是否保存SSIS包,如果选择保存,在保存方式有:SQlserver .文件系统.如果选择sqlserver 则 包信息保存在 msdb 系统数据库 中的 sysssispackages 表中.如果是文件系统,在保存为 .dtsx 文件存在于文件系统的某个目录下. 保存包后,下次再执行相同的数据导出导入操作可以,用 sqlserver 工具 “执行包实用工具” 来选择 上次保存的包.执行即可 如果要删除保存的包,则可以删除 msdb数据库…
首先理解导入导出包的基本概念:http://technet.microsoft.com/zh-cn/library/ms141772(v=SQL.110).aspx包既可以保存在SQL Server msdb数据库的sysssispackages表中,也可以保存在文件系统中.包存储区是Integration Services服务监视和管理的逻辑存储区,它包括在Integration Services服务的配置文件中指定的msdb数据库和文件系统.我们创建包含两个子计划的维护计划Maintenan…
C#调用SSIS包需要引用两个DLL .(具体位置在C盘搜索,MSDN和百度提供的路径都不太正确) Microsoft.SQLServer.ManagedDTS.dll Microsoft.SqlServer.Dts.DtsClient.dll    这是MSDN上的例子 https://msdn.microsoft.com/zh-cn/library/ms136025%28v=sql.120%29.aspx MSDN上的例子只有读取一个DataReader的做法,并且该方法不能加事件. 下面是…
原文:SSIS从理论到实战,再到应用(2)----SSIS包的控制流 前文回顾: SSIS从理论到实战,再到应用(1)----创建自己的第一个包 上次说到创建了自己的第一个包,完成了简单的数据从数据库=>数据库,以及Excel文件=>数据库过程,这一次咱们回看看一个包里面到底有哪些好玩的元素构成: 咱们一般写过代码的人都知道,很多的看似很复杂的功能都是由:顺序,选择,循环构成的.SSIS也不例外,咱们可以看到SSIS包里面工具选项卡里面已经写出他的本质了: SSIS包里面功能元素包含以下图所示…
** 温馨提示:如需转载本文,请注明内容出处.** 本文连接:http://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上一篇的存储过程是其中一个更新方法,后来随着数据量逐渐增大,受网络环境的影响,批量远程插入消耗的时间已经无法承受,后来在导出数据时发现了保存SSIS选项,然后展开了测试开发,现将成果分享出来供大家参考,类似的资料不少,所以就简单写写操作步骤. 首先,尽量可能使用部署到环境的Windows账号,比如部署…
SSIS 包部署错误 0xC0010014 Reinhard 在部署 SSIS 包时,提示如下错误. 由于错误 0xC0010014"发生了一个或多个错误.在此消息之前应有更为具体的错误消息,对这些错误进行详细说明.此消息用作遇到错误的函数的返回值.",无法加载包.当 CPackage::LoadFromXML 失败时,会出现这种情况. 程序位置: 在 Microsoft.DataTransformationServices.DTSExecUI.Controls.GeneralView…
在商业智能解决方案中,SSIS工程有两种部署模式:工程部署(project deployment)和包部署(package deployment),默认是工程部署模式,在Package的管理上,工程部署模式是当前主流的部署模式,比包部署的更容易管理,也更容易对package进行调试和故障排除,而包部署模式是传统的部署模式在包部署模式中.在包部署模式中,SSIS引擎支持包配置(Package Configuration)功能,用户能够在Package运行时动态修改属性值.包配置是配置项的集合,每一…
调用ssis包实现Sql Server的数据导入功能网上已经有很多人讨论过,自己参考后也动手实现了一下,上一次笔者的项目中还用了一下这个功能.思前想后,决定还是贴一下增强记忆,高手请54. 1.直接调用ssis包,需要引用Microsoft.SqlServer.DTSRuntimeWrap.dll,客户端需要安装MS SQL Server2005的客户端组件. 2.调用代码 代码         /// <summary>         /// /通过SSIS包 将数据导入数据库      …
本篇介绍如何使用SSIS和作业完成自动更新目标数据任务. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9018978.html 笔者需要定期从服务器更新N家客户的远程服务器数据,上一篇的存储过程是其中一个更新方法,后来随着数据量逐渐增大,受网络环境的影响,批量远程插入消耗的时间已经无法承受,后来在导出数据时发现了保存SSIS选项,然后展开了测试开发,现将成果分享出来供大家参考,类似的资料不少,所以就简单写写操作步骤.…
本文转自:http://www.cnblogs.com/lijun4017/archive/2008/12/04/1347701.html 编写简单SSIS包光看MSDN应该就问题不大了,最近几天几个朋友来问我SSIS的调用问题,然后想起我当初实现调用SSIS包的问题的时候也走了不少弯路,确实这方面的资料网上很少.下面我总结了一下,大概分为这么三类吧. 1.使用sqserver2005的代理服务来新建作业来执行包任务; 2.使用编程语言来实现包的调用,比如c#或者vb.net等; 3.使用存储过…