这篇博客介绍一下循环任务的一种:文件循环。项目背景是这样的:升级数据库中,我们需要升级许多的View,Function,SP等,这些文件众多,所以期望能够把文件统一的放在一个或者几个文件夹中一起执行。这种需求,文件循环任务就派上用场了。

1,如下图,容器下有两种循环,我们选择Foreach循环容器,For循环容器请自行探索。

2,再看Package工作区,拖动箭头位置可以将两个任务连接在一起,组成一个执行序列。

3,双击Foreach循环容器任务后,打开Foreach循环容器编辑器,左侧选择集合,右侧Enumerator 选择Foreach文件枚举器。

4,点击Expressions右侧的按钮,打开属性编辑器,属性选择Directory,表达式就选择我们之前创建的变量即可,这个变量之前我们是指向Script文件夹。

5,然后我们再这样设置一下,就能够遍历Script文件夹以及子文件夹下的所有sql文件。

经过以上步骤,现在的循环任务已经能够遍历文件,但是要怎么执行我们遍历的文件呢?

1,需要新建一个变量,用来存放每次循环得到的文件名,例如:File_Script。

2,在循环编辑器的窗口,左侧选择变量映射,右侧变量选择我们刚刚新建的变量,这样每次循环文件名都会赋值给变量File_Script。

那么又怎么使用这个变量呢?

以前的博客有提到过,执行sql文件需要文件连接,那么我们能不能创建一个文件连接,文件的ConnectionString就选择File_Script呢?想到的就要去试试,不试一试就可能错过你这一辈子最重要的东西。如下图,我们确实创建了这么一个文件连接。

但是要注意File_Script这个变量的作用域,它虽然是在Package中创建的,但是它只有在循环中才赋值,所以相当于只有在循环内部才能取得一个有效的文件路径,也就是说利用这个变量创建的文件连接只能在循环任务的内部使用。

如下图,我们在循环任务内部加入一个执行sql任务,并且选择刚刚创建的文件连接,这样整个Script文件夹下的sql文件都会被执行了。

请注意:在循环任务中,如果有一次循环出错,循环任务会暂停执行。

转载于:https://www.cnblogs.com/marsyan/p/4539902.html

SSDT-BI之七:循环任务(容器)相关推荐

  1. python入门到精通 _5数据容器(list、tuple、str、set、dict)

    文章目录 1.list列表 1.1 列表的定义 1.2 列表的下标索引 1.3 常用操作方法总结 案例 1.4 列表的遍历for/while 案例 2. tuple元组 2.1 定义元组 2.2 相关 ...

  2. 数组与字符串三(Cocos2d-x 3.x _Array容器)

    "程序=数据结构+算法" 在面向对象的语言中,诸如数组.堆栈.队列等的结构都被封装成了特定的类,按照特定数据结构的算法设计起来,这就是容器类. Cocos2d-x中,能使用的容器类 ...

  3. 分支结构,循环结构,for循环,九九乘法表

    一:复习 ''' 1.变量名命名规范-- 1.只能由数字.字母 及 _ 组成-- 2.不能以数字开头-- 3.不能与系统关键字重名-- 4._开头有特殊含义-- 5.__开头__结尾的变量,魔法变量- ...

  4. C++ 容器及选用总结

    原文地址 目录 ==================================================== 第一章 容器 第二章 Vector和string 第三章 关联容器 第四章 迭 ...

  5. 标准模板库之容器-《C++标准库(第二版)》读书笔记

    写在前面:本文是阅读<C++标准库(第二版)>的读书笔记. 文章目录 6.1 STL组件(Component) 6.2 容器(Container) 6.2.1 序列式容器(Sequence ...

  6. Java里的容器 Collection 简介

    容器也是Java面试经常问到的问题.  也是Java编程的其中1个难点. 在一篇文章中很难全部讲清楚, 我打算分几篇逐步介绍. 一.  什么是容器 1.1 容器的定义 Java里的容器的定义很简单: ...

  7. 深入探究Python中的字典容器

    字典(dictionary) 我们都曾经使用过语言词典来查找不认识的单词的定义.语言词典针对给定的单词(比如 python)提供一组标准的信息.这种系统将定义和其他信息与实际的单词关联(映射)起来.使 ...

  8. 第四章:条件语句(if)和循环结构(while)

    1.流程控制 含义与作用 Python程序执行,一定按照某种规律在执行 a.宏观一定是自上而下(逻辑上方代码一定比逻辑下方代码先执行):顺序结构 b.遇到需要条件判断选择不同执行路线的执行方式:分支结 ...

  9. 模仿Spring实现一个类管理容器

    简介: 项目的初衷是独立作出一个成熟的有特色的IOC容器,但由于过程参考Spring太多,而且也无法作出太多改进,于是目的变为以此项目作为理解Spring的一个跳板,与网上的一些模仿Spring的框架 ...

  10. 容器云常见安全威胁与防范 | 技术干货

    戳蓝字"CSDN云计算"关注我们哦! 技术头条:干货.简洁.多维全面.更多云计算精华知识尽在眼前,get要点.solve难题,统统不在话下! 除了应对常见云平台和传统数据中心常见的 ...

最新文章

  1. pandas_getdummies()
  2. Elasticsearch官档翻译——2 2 在Linux上启动服务
  3. tomcat 部署:直接访问域名访问项目
  4. html旋转墙壁效果,css3实现照片墙效果,鼠标悬浮时旋转放大并摆正
  5. 在Vista操作系统中通过manifest文件使VC应用程序获得管理员权限
  6. 【PC工具】更新win10关闭更新工具及注意事项
  7. 《Python黑帽子:黑客与渗透测试编程之道》 Web攻击
  8. eclipse html页面校验,当我在Eclipse浏览器中运行url时,HTML表单未通过验证
  9. 微服务配置中心是干啥的_微服务化改造系列之三:配置中心
  10. 网络安全实验1——口令攻击和钓鱼攻击
  11. This request has been blocked; the content must be served over HTTPS.
  12. 苹果企业开发者账号申请攻略
  13. 中国最美的100首古代情诗
  14. 二十四节气和计算机专业,命理学与二十四节气的关系
  15. 什么是指令集架构ISA【从处理器谈起】
  16. kafka-生产者消息发送流程
  17. 关于vue2高德地图使用
  18. 小红书话题笔记是什么意思?话题笔记发布步骤流程分享
  19. usleep()和sleep()的区别
  20. MySQL添加约束条件

热门文章

  1. python 连续比较_For循环比较python中以前的值
  2. docker 安装mysql实战_使用docker搭建mysql实例教程
  3. python print中文_python:print含有中文的list
  4. mysql 分区索引失效_分区表的本地索引竟然失效了——ORA-01502
  5. python敏感词过滤代码简单_大型企业都在用,Python实现敏感词过滤
  6. python实现弹幕_python实现b站直播自动发送弹幕功能
  7. ansible图形化界面开源_MySQL常见的图形化工具
  8. python3 打印_Python 3 进阶 —— print 打印和输出
  9. python 混淆矩阵_绘制混沌矩阵
  10. rs232转usb驱动for server 2008_电子史 · 什么插头是需要转一圈才能插进去的?