图解SSIS监视文件夹并自动导入数据

原文:图解SSIS监视文件夹并自动导入数据

演示案例:让系统自动监视文件夹,并把文件夹下面的excel文件导入到sql中,之后清空目录。这个过程以往都需要写程序来实现或者定时执行,现在可以用ssis来订制任务完成。

在阅读本文之前,你先要学会如何用ssis来批量导入数据,可以参考我先前的blog文章,这里我们用相同的数据交换背景来演示。http://blog.csdn.net/jinjazz/archive/2008/07/25/2710169.aspx

1、建立测试环境,目录为F:/excel 下面保存需要导入的excel文件,F:/excel/upload目录用来让ssis自动监视,当我们上传了一批excel到F:/excel后,可以在F:/excel/upload目录中新建一个空文件,当ssis监视到这个目录有新增文件后就会遍历F:/excel目录依次导入表格。为什么不直接监视F:/excel目录呢?因为要考虑批量上传的问题,所以不可以直接监视数据目录。

2、这里假设你已经学会了ssis的基本使用办法和批量导入excel的方法,不会也不要紧,只需要参考一下http://blog.csdn.net/jinjazz/archive/2008/07/25/2710169.aspx这篇就可以了,我们已这篇文章的成果为基础,增加一个wmi监视任务用来监视文件夹和两个文件系统任务用来处理导入后的文件。如图:

3、wmi监视任务的设置也很简单:

4、其中wmi连接设置:

5、wmi查询语句设置:

SELECT * FROM __InstanceCreationEvent WITHIN 10 WHERE TargetInstance ISA "CIM_DirectoryContainsFile" and TargetInstance.GroupComponent= "Win32_Directory.Name=/"f:////excel////upload/""

6、循环内的文件系统任务用来删除已经导入的excel,文件名沿用枚举得到的变量,而操作选择“删除文件”

7、循环外的文件系统任务用来清除监视文件夹里面的那个新增文件

8、这样我们就完成了整个配置,调试一下

9、copy一些excel到f:/excel中,格式沿用上面参考文章中的excel

10、在upload目录中新建一个文本文档

11、快速切换回设计器中,可以看到执行结果

12、整个过程结束,你会发现excle文件已经导入到sql中,并且已导入的文件连同新建的txt文件都已经被删除。这是ssis自动作业的一个简单的例子。

你可以把上面的步骤扔到一个循环容器中让他不停的监视,因为这个过程结束后wmi监视就结束了。

你可以用其他复杂的wmi来实现任务调度,比如监视服务器性能,磁盘空间等。

相关文档 :

图解SSIS批量导入Excel文件

时间: 2024-10-01 02:48:53

图解SSIS监视文件夹并自动导入数据的相关文章

一个监视文件夹日期的脚本

::这个脚本用计划任务执行后,可以对WINDOWS Backup的文件夹进行监视,如果没有新的备份产生,则发送EMAIL到指定的地址. ::脚本允许一次事件,第二次事件后才发送告警. @echo off SETLOCAL SETLOCAL ENABLEDELAYEDEXPANSION SET destinationfolder=H:\WindowsImageBackup\MBM-SBS set emailServer=smtp.yourISP.com SET [email protected]

新建的Android里没有R文件和设置自动导入包

今天又遇到一些小问题,记录一下,以后方便回忆吧. 之前还好好的工程,一溜烟的功夫出来个报错“can not reslove symbol  'R'”, 而且在app/build/generated/source目录下并没有r文件夹, 其实,不用理报错,只有运行一下,自动就会生R文件 还有补充的另一个问题, 刚开始导入包导不进去,谁知道,可直接设置自动导入包,就在这~~,在File了的stetings里

maven intall在target文件夹中自动生成的war包部署服务器时缺斤少两

1.问题描述,本地改动特别大或者升级系统操作,打war包部署服务器上程序时候,页面或者后台总是报错,原因就是比本地少东西. 2.问题排查解决:maven clean然后maven intall在target文件夹中生成一个war包: 编译之后,target目录层级下自动生成的war包,执行 maven install命令的时候自动生成,但是将war包部署到服务器上,总是提示少页面或者模块,一系列排查依旧少东西,页面和后台的控制台报错等等,页面访问不了页面找不到错误等,一系列排查错误无果,尝试性的

建分区外表 自动导入数据

===========建表后增加分区,数据自动导入 create external table gid_tag_1114 (a1 string ,b1 string,c1 string ) partitioned by (day int) row format delimited fields terminated by '|' 添加分区 alter table gid_tag_1114 add partition(day=20161112) location 'hdfs://172.16.11

使用实时文件夹显示ContentProvider的数据

所谓实时文件夹(即LiveFolder),是指用于显示ContentProvider提供的数据的桌面组件. ContentProvider用于向外提供数据访问的接口,一个应用程序可通过ContentProvider把自己的数据暴露出来,从而允许其他程序自由调用.ContentProvider除了可以供其他程序访问之外,还可通过实时文件夹添加成桌面快捷方式. 当用户把实时文件夹添加到系统桌面上之后,如果用户单击该实时文件夹图标,系统将会显示从指定ContentProvider查出来的全部数据---

rsync+inotify 实现文件夹的自动同步备份

1 配置好rsync 服务器,客户端,见上一篇 192.168.1.10web服务器中/www  备份到 rsync192.168.1.11 /tmp/backup 2 下载安装inotify wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz 解压 ./configure   make make install 3 简介 inotify-tools提供的两个命令行工具: inoti

sharepoint 读取文件夹中所有的数据

private void BindData() { SPWeb web = SPContext.Current.Web; SPList list = web.Lists["我的文档"]; SPListItemCollection items = GetItems(list); GridView1.DataSource = items.GetDataTable(); GridView1.DataBind(); } private SPListItemCollection GetItems

自动管理中转文件夹

办公室一族常常会接受大量的文件,同事传送的文档.电邮的附件.U盘上的一些文件.往往在拷贝这些文件的时候并没有多少时间去对这些文件进行分类管理,很多人直接桌面上新建一个文件夹把文件放进去.久而久之,桌面越来越满,充斥着“新建文件夹”,“新建文件夹(2)”……人们也就越不想去整理. 这个脚本可以帮助计算机使用者更好地管理这些临时文件.在中转的文件夹(或桌面)右键选择新建文本文档,将文件名改为Manager.bat,并将这些代码写进去,保存退出. @echo off for /f "tokens=*&

iOS并发编程笔记,包含GCD,Operation Queues,Run Loops,如何在后台绘制UI,后台I/O处理,最佳安全实践避免互斥锁死锁优先级反转等,以及如何使用GCD监视进程文件文件夹,并发测试的方案等

iOS并发编程笔记,包含GCD,Operation Queues,Run Loops,如何在后台绘制UI,后台I/O处理,最佳安全实践避免互斥锁死锁优先级反转等,以及如何使用GCD监视进程文件文件夹,并发测试的方案等 线程 使用Instruments的CPU strategy view查看代码如何在多核CPU中执行.创建线程可以使用POSIX 线程API,或者NSThread(封装POSIX 线程API).下面是并发4个线程在一百万个数字中找最小值和最大值的pthread例子: #import