本文通过向SSIS传递动态表名称,EXCEL路径实现导出数据到EXCEL例子来说明SSIS是如何使用变量的。
新建一个Project,选择左边的类型为Business Intelligence Projects.然后右边选择Integration Services Project.设置好名字,路径。
在出现的Control Flow界面上右键,选择Variables菜单。
在窗口的左边就出现一个Variables变量设置窗口。
点击上面的第一个图标(添加变量)。
分别添加两个变量:
名称 范围(Scope) 类型 默认值
Tablename 默认这个SSIS包的名称 string sys.objects
ExcelFilePath 默认这个SSIS包的名称 string c:text.xls(先在C盘创建一个EXCEL文件,先设定好几个列名)
注意:必须要先设置好默认值日,要不然不能调试。到时如果没问题,调用时再移除掉。
在左边工具栏中拖一个Data Flow Task进来。双击这个Task进入Data Flow编辑区。
再从左边工具栏中的Data Flow Source(数据源) 中拖一个OLE DB Source,和在Data Flow Destinations(目标)中拖一个Excel Destination。
在底部Connection Managers中创建两个联接。
一个是数据库联接,配置好你想要连接的数据库服务器,数据库名称。
另一个是EXCEL联接。这里你可以先默认预先设定一个EXCEL文件。
开始使用变量:
选中OLE DB Source,双击打开属性窗口,在OLE connection manager中选择你刚才创建的数据库联接。Data Access mode(数据访问模式)选择Table name or View name Variable.
下面的变量名选择你刚才创建的Tablename变量。就可以了。
在底部Connection Managers中,选中Excel Connection Manager按F4打开右下角属性。
找到Expressions属性,点击右边的…按钮。弹出表达式编辑窗口。
在Property属性中选择ExcelFilePath,点击旁边的Expression按钮。弹出表达式创建窗口。
展开左边的Variables,找到User::ExcelFilePath,拖入到下面的编辑框。
点击下面的Evaluate Expression。得到表达示值。设置OK。
点击执行,没问题就可以移除掉刚才的默认值了。
怎样在SQL中调用带变量的SSIS:
将刚才创建的DTSX文件放在一个文件夹下。
用以下语句:
欢迎浏览的小站:SQL十万个为什么 http://www.sqlwhy.com