当 SSIS 首次出现时,有大量关于所有问题的笑话和帖子,以及每个人如何认为 DTS 更好,他们真的必须转换吗?多年来,我开始欣赏 SSIS。它是一个非常强大和有用的工具,可以做一些了不起的事情。当然,最近版本的 SSIS 已经显示出巨大的改进。不幸的是,我在开始时遇到的一些最大的抱怨今天仍然存在。其中之一就是它是如何特定于版本的。在执行方面,情况还不错。dtexec 的更高版本将“临时”升级软件包以便在其版本中运行它。但是,在编辑时,根本没有向后(或向前)兼容性。如果您在更高版本的工具(Data Tools 或 Business Intelligence Development Studio)中打开较低版本的 SSIS,则会升级包。一旦升级,就再也回不去了。降级软件包的唯一选择是您是否有备份或较旧的副本。而且您当然无法打开比您打开它的工具更高版本的 SSIS 包。

如果您支持多个版本的 SSIS,这可能会导致一些问题。如果您有几十个 SSIS 包,而您没有某种命名或放置方案来确保您知道每个包的版本,那么您很容易遇到麻烦。假设您正在帮助一位同事处理他们的 SSIS 包。他们安装了 SQL 2008,这是当前运行的服务器版本。您打开它但忘记了您实际上正在运行 SQL 2012 的 Data Tools。您解决了他们的问题,但您没有注意,也没有注意到“我已经自动升级了您的包”消息。你的同事很兴奋!直到第二天他们让你知道他们在凌晨 3 点被叫醒,因为他们的包裹刚刚开始抛出错误消息。关于错误版本的事情?哎呀。

在 DTSX 文件中必须有一个标签,说明它的版本,并且由于 SSIS 包以 XML 格式存储,我们应该能够很容易地找到它。如果您在文本编辑器(或 IE,或任何其他 xml 查看器)中打开 DTSX 文件,您可以在包顶部附近找到一个标签 PackageFormatVersion。该属性将告诉您这个包也属于哪个版本的 SSIS。下面我有一个漂亮的小表,其中包含每个 SQL 版本的 PackageFormatVersion 以及每个版本的 Visual Studio 的一个很好的奖励。

SQL 版本 建造 # 包格式版本 Visual Studio 版本
2005年 9 2    2005年
2008年 10 3    2008年
2008 R2 10.5 3    2008年
2012年 11 6    2010 或 BI 2012
2014年 12 8    2012 CTP2 或 2013
2016年 13 8    2015/2017
2017年 14 8    2017年

SSIS Package Version的更多相关文章

  1. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转

    效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载])    本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较   ...

  2. 一次SSIS Package的调试经历

    SSIS Package的调试有时是一个非常艰难的过程,由于SSIS 编译器给出的错误信息,可能并不完善,需要程序员根据错误信息抽丝拨茧,寻找错误的根源,进而解决问题. 第一部分:SSIS提供的调试工 ...

  3. 微软BI 之SSIS 系列 - 通过设置 CheckPoints 检查点来增强 SSIS Package 流程的重用性

    开篇介绍 通常一个 ETL Package 是由多个控制流和数据流共同组成,有的时候 ETL 的步骤可能会比较多,整个流程执行下来的时间可能比较长.假设在 ETL Package 中包含5个Task, ...

  4. 微软BI 之SSIS 系列 - 利用 SSIS 模板快速开发 SSIS Package

    开篇介绍 在做 ETL 项目的时候,往往很多 Package 的开发都是基于相同的模型和流程.比如在 Package 开始运行时需要向 Process Log 表中插入记录,在 Package 运行结 ...

  5. SQL Server(SSIS package) call .net DLL

    There are two method to call .net DLL in SQLSERVER. The first one is to use the sql clr but it has a ...

  6. ssis package 在调试状态中设置断点,程序 不进入断点 的解决方案

    原文:ssis package 在调试状态中设置断点,程序 不进入断点 的解决方案 针对 SSIS intergation 项目 > 属性 > Debug >Run64bITRunt ...

  7. SSIS Package to Call Web Service

    原文 SSIS Package to Call Web Service SSIS Package to Call Web Service. You can Call WebService from S ...

  8. Agent Job代理 执行SSIS Package

    摘要: 在使用Agent Job时, 运行SSIS包的Run as账号,必须有SSIS中connection manager的连接权限. 如果没有连接权限,可以用创建proxy账号,并确保proxy账 ...

  9. How to Configure an SSIS Package to Access a Web Service using WCF

    This information is from:http://blogs.msdn.com/b/dbrowne/archive/2010/07/08/how-to-configure-an-ssis ...

  10. SSIS package 更新 variable

    在Package中声明一个variable,在package运行的过程中,SSIS如何update Variable? 第一种方法:使用 Script Task 来更新Variable的值 1,创建一 ...

随机推荐

  1. react知识点-01

    1. 使用 globalContext 进行生产消费.非父子间通信

  2. 使用nvm实现自由切换nodejs版本

    首先安装使用nvm前需要删除卸载干净!!! 可以去GitHub安装最新的版本:https://github.com/nvm-sh/nvm 或者直接下载Windows的 releases版本安装:htt ...

  3. Android自动化用例编写

    java -jar appcrawler.jar<路径> --demo java -jar  appcrawler.jar<路径> \ -c example.yml \ --c ...

  4. [iOS] iPhone,开发工具的一些杂项

    1.在safari的开发菜单里一直不显示我当前的iPhone,后来机缘巧合在 设置- 开发者 - Clear Trusted Computers ,重新信任电脑之后,就OK了(️)

  5. Neuropsychological Assessment 5th

    书本详情 Neuropsychological Assessment作者: Muriel Deutsch Lezak / Diane B. Howieson / Erin D. Bigler / Da ...

  6. 看不见的的html

    1.  meta标签自动刷新/跳转 实现定时跳转功能:除了设置定时器外  可以 <meta http-equiv="Refresh" content="5" ...

  7. Python 堆、栈和队列详解

    队列: 1.队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表.进行插入操作的端称为队尾,进 ...

  8. 19_webpack_externals

    假如我们购买了CDN服务器为我们的网站的访问速度进行优化,那么我们,该如何配置 假如我的CDN为:https://mr-hou88888/cdn/那么publicPath该如何配置 1.配置publi ...

  9. 内存模型--共享、JMM

    Balking 指令重排

  10. vue打包添加时间戳,实现更新项目自动清除缓存

    本来vue打包会自动用chunkhash来解决缓存问题,但是部分浏览器不会自动更新,因此可以通过后面t=${ }的不同来实现自动重新加载文件,保持最新的界面 (1).webpack打包:修改build ...