SSIS包的组建之连接管理器
上一篇我们通过一个示例来介绍一下SSIS 包的开发.接下来的内容我们将学习一下包中各个选项卡的使用.如:连接管理器选项卡、控制流选项卡、数据流选项卡和事件处理选项卡等等。这一篇将介绍一下连接管理器作用以及使用情况。
连接管理器的作用是连接到不同类型的数据源以提取和加载数据。任何包的开发都需要提供源数据。
下表列出了 SQL ServerIntegration Services 提供的连接管理器类型。
类型 |
说明 |
ADO |
连接到 ActiveX 数据对象 (ADO) 对象。 |
ADO.NET |
使用 .NET 提供程序连接到数据源。 |
CACHE |
从数据流或从缓存文件 (.caw) 中读取数据,并可将数据保存到缓存文件。 |
EXCEL |
连接到 Excel 工作簿文件。 |
FILE |
连接到文件或文件夹。 |
FLATFILE |
连接到单个平面文件中的数据。 |
FTP |
连接到 FTP 服务器。 |
HTTP |
连接到 Web 服务器。 |
MSMQ |
连接到消息队列。 |
MSOLAP100 |
连接到 SQL ServerAnalysis Services 实例或 Analysis Services 项目。 |
MULTIFILE |
连接到多个文件和文件夹。 |
MULTIFLATFILE |
连接到多个数据文件和文件夹。 |
OLEDB |
使用 OLE DB 访问接口连接到数据源。 |
ODBC |
使用 ODBC 连接到数据源。 |
SMOServer |
连接到 SQL Server 管理对象 (SMO) 服务器。 |
SMTP |
连接到 SMTP 邮件服务器。 |
SQLMOBILE |
连接到 SQL Server Compact 数据库。 |
WMI |
连接到服务器,并指定服务器上 Windows Management Instrumentation (WMI) 管理的范围。 |
下面就简单的介绍一下我们常用的使用连接管理器类型。
- OLE DB 访问接口连接到数据源(数据库连接)
- 首先打开上一篇创建名为"SSISDemo"项目.
- 在连接管理器窗口中,右击选择New OLE DB Connnection项,将弹出如下窗口:
左边数据连接框显示的连接是我们已创建好的数据库连接。右边数据库连接属性框显示对应的属性信息。你也可以新建一个数据库连接。单击新建按钮,弹出如下对话框
在这对话框中,我们可以根据自己的需要填写相应的内容。本例是以连接本地AdventureWorks数据库。单击确定按钮。则会在连接管理器看到如下信息:
图中LocalHost.AdventureWorks.sa就是我们刚才创建的数据库连接。右击LocalHost.AdventureWorks.sa弹出属性框。可以根据需要修改这些属性。比如将Name属性修改为: AdventureWorks 。 到此一个 简单OLE DB连接方式建立完成。其中的一些属性含义。自己可以在后续的学习中逐步的掌握。
- FILE连接到文件或文件夹(平面文件连接)
平面文件连接管理器要比OLE DB连接方式要复杂的多。平面文件连接方式主要是连接非数据库类型的文件。下面介绍下如何创建平面文件连接。假如我们有一个名为User.txt文件。数据格式如下:
每行有两列数据。已“Tab”隔开。接下来介绍如何在连接管理器中连接这个文本文件。
- 仍然在连接管理器框中右击,选中新建平面文件连接,弹出对话框
在图中可以看到配置平面文件连接管理器需要配置连接管理器名称、常规、列、高级、预览这个属性。下面将介绍如何配置这些属性
- 连接管理器名称:为工作流中的平面文件连接提供唯一的名称。所提供的名称将在连接管理器框中显示。
- 常规选项卡:使用“平面文件连接管理器编辑器”对话框的“常规”页可以选择文件和数据格式。使用平面文件连接可以将包连接到文本文件。该选项卡中包含以下属性:文件名:键入要在平面文件连接中使用的路径和文件名。
区域设置:在区域设置下拉框中选中指定的区域位置,以便为排序以日期和时间格式提供语言特性的信息。在设计的时候最好选择英语(美国)选项
Unicode复选框:指示是否使用Unicode。如果使用Unicode则不能指定代码页。
代码页:在代码页中选中指定非Unicode文本的代码页。设计时最好选择1252(ANSI-拉丁语I)格式:在格式下拉框中选中文本的格式
属性 | 说明 |
带分隔符 | 各列之间由在“列”页上指定的分隔符隔开 |
固定宽度 | 列的宽度固定 |
右边未对齐 | 在右边未对齐的文本中,除最后一列之外的每一列的宽度都相同。它有行分割符分割 |
文本限定符:指定要使用的文本限定符。例如,可以指定文本字段必须用引号括起来。若选择文本限定符之后,就不能重新选择"无"选项,键入None以取消选择文本限定 符。
标题行分隔符:从标题行的分隔符列表中选择,或输入分隔符文本。
值 |
说明 |
{CR}{LF} |
标题行由回车符和换行符的组合分隔。 |
{CR} |
标题行由回车符分隔。 |
{LF} |
标题行由换行符分隔。 |
分号 {;} |
标题行由分号分隔。 |
冒号 {:} |
标题行由冒号分隔。 |
逗号 {,} |
标题行由逗号分隔。 |
制表符 {t} |
标题行由制表符分隔。 |
竖线 {|} |
标题行由竖线分隔。 |
要跳过的标题行数:指定要跳过的标题行数或初始数据行数(如果有的话)。
在第一个数据行中显示列名称:指示在第一个数据行中是否要求列名或提供列名。
根据常规选项卡中的这些属性以后,我们就可以根据需求设定文本显示的格式。如下图
- 列选项卡:使用”平面文件连接管理器编辑器”对话框中的”列”选项卡可以在这里设置行和列的信息。并预览相应的文件。如下图:
包含如下属性
行和列分隔符:此属性和常规选项卡中的标题行分隔符一样。可以根据需求设置行和列的显示方式。
预览: 查看平面文件中的示例数据,这些数据已按所选的选项划分为列和行.如上图。
刷新:通过单击“刷新”查看更改要跳过的分隔符后的效果。只有在更改行或列选项之后,此按钮才可见。
重置列:通过单击“重置列”可以删除除原始列之外的所有列。 只有调转到其他选项卡后,然后再回到“列”选项卡,此按钮才可见。
本示例我们在列分隔符选项中选择制表符(t),然后单击刷新按钮。
- 高级选项卡:使用“平面文件连接管理器编辑器”对话框的“高级”页,设置指定 Integration Services 如何读写平面文件中的数据的属性。可以更改平面文件中各个列的名称,并设置包括文件中每个列的数据类型和分隔符在内的属性。默认情况下,字符串列的长度为 50 个字符。可以调整这些列的长度,以免数据截断或超出列宽。还可以更新其他元数据以便与目标列兼容。例如,可以将只包含整型数据的列的数据类型更改为数值数据类型,例如 DT_I2。可以手动进行这些修改,也可以单击“选择类型”按钮,以使用“提供列类型建议”对话框来评估示例数据并自动进行其中一些更改。在高级选项卡中我们可以做如下工做:
配置各列的属性:选择左窗格中的列可在右窗格中查看列的属性。请参阅下表以了解数据类型属性的说明。列出的部分属性仅对某些平面文件格式是可配置的。
属性 |
说明 |
ColumnType |
表示列是由分隔符分隔、还是固定宽度,或是右边未对齐。此属性是只读的。在右边未对齐的文件中,除最后一列之外的每一列的宽度都固定。它由行分隔符分隔。 |
OutputColumnWidth |
指定值存储为字节数;对于 Unicode 文件,此值对应于字符数。在数据流任务中,此值用于设置平面文件源的输出列宽。 注意 在对象模型中,此属性的名称为 MaximumWidth。 |
DataType |
从可用数据类型的列表中进行选择。 |
TextQualified |
指示文本数据周围是否有文本限定符(例如引号字符)。 值说明 True平面文件中的文本数据是受限定的。 False平面文件中的文本数据是不受限定的。 |
Name |
提供说明性列名。如果不输入名称,则 Integration Services 将自动创建名称,格式为“列 0”、“列 1”,依此类推。 |
DataScale |
指定数字数据的小数位数。小数位数是指小数点后的位数。 |
ColumnDelimiter |
从可用列分隔符的列表中进行选择。选择不可能出现在文本中的分隔符。对于固定宽度的列,将忽略此值。 值说明 {CR}{LF}列由回车符和换行符的组合分隔。 {CR}列由回车符分隔。 {LF}列由换行符分隔。 分号 {;}列由分号分隔。 冒号 {:}列由冒号分隔。 逗号 {,}列由逗号分隔。 制表符 {t}列由制表符分隔。 竖线 {|}列由竖线分隔。 |
DataPrecision |
指定数字数据的精度。精度是指数字的位数。 |
InputColumnWidth |
指定值以字节数进行存储;对于 Unicode 文件,该值将显示为字符数。对于分隔列,将忽略此值。 注意 在对象模型中,此属性的名称为 ColumnWidth。 |
新建:通过单击“新建”添加一个新列。默认情况下,单击“新建”按钮将会在列表末尾添加新列。该按钮还包括以下选项,可以在下拉列表中选择。
值 |
说明 |
添加列 |
在列表末尾添加新列。 |
在其前插入 |
在所选列前面插入新列。 |
在其后插入 |
在所选列后面插入新列。 |
删除:选择一列,然后单击“删除”来删除该列。
建议类型:使用“提供列类型建议”对话框可以计算文件中的示例数据,并获取关于每列的数据类型和长度的建议。
充分了解高级选项卡的属性后,我们将列0的Name和DataTye 属性改为CustomerID和DT_I8类型。将列1的Name和DataTye 属性改为SKUList和DT_STR类型,并将OutColumnWidth属性修改为1000。
- 浏览选项卡:单击浏览选项卡,可以看到如下图显示的数据
只要前三个选项卡配置成功后,预览一下数据显示格式就可以了。最后单击确定按钮。平面文件连接管理器就建立成功。最终在连接管理器框中显示刚才创建名为“Userout.txt“的平面文件管理器。
本节就介绍常用的两个连接管理器。其他的连接管理器可以参考这两个例子自己尝试去建立连接。
转载于:https://www.cnblogs.com/gudujianxiao/archive/2012/02/09/2342204.html
SSIS包的组建之连接管理器相关推荐
- ssis 计划任务_SSIS Hadoop连接管理器和相关任务
ssis 计划任务 In this article, we will give a brief introduction of Hadoop and how it is integrated with ...
- SSIS 错误代码 DTS_E_OLEDB_EXCEL_NOT_SUPPORTED 没有可用的 OLE DB 访问接口 SSIS 的 64 位版本中不支持 Excel 连接管理器...
在Server 2008 R2的系统中,使用SQL安装包的BIDS(vs 08 shell)开发SSIS,按例子建好一个后,提示" SSIS 错误代码 DTS_E_OLEDB_EXCEL_N ...
- ssms 连接 ssis_SSIS连接管理器:OLE DB,ODBC,ADO.NET
ssms 连接 ssis In this article, I will first give an overview of the OLE DB, ODBC, and ADO.NET SSIS co ...
- 引用管理器没有程序集_Microsoft弃用远程桌面连接管理器
微软本周宣布,出于安全考虑,已弃用远程桌面连接管理器(RDCMan). 该应用程序已经存在了数十年,为用户提供了管理多个远程桌面连接的能力,但是Microsoft长期以来一直在投资其他解决方案以向用户 ...
- SOFA 源码分析 — 连接管理器
前言 RPC 框架需要维护客户端和服务端的连接,通常是一个客户端对应多个服务端,而客户端看到的是接口,并不是服务端的地址,服务端地址对于客户端来讲是透明的. 那么,如何实现这样一个 RPC 框架的网络 ...
- 电脑显示无法加载远程访问连接管理服务器,Win7系统宽带连接出现错误711无法加载远程访问连接管理器服务如何解决?...
最近很多用户在反映在宽带连接时出现"错误711,无法加载远程访问连接管理器服务,"这是怎么回事呢?其实这主要是因为"WMI控件"未取得管理员权限造成的,那么遇到 ...
- 计算机无法加载远程访问连接管理器服务,win7宽带连接提示无法加载远程访问连接管理器服务错误711怎么办...
使用宽带连接拨号上网如果遇到无法连接网络的情况,系统都会给出错误代码提示.最近就有很多win7 64位旗舰版用户反馈,宽带连接时出现了错误711,弹出了网络连接提示窗口,显示无法加载远程访问连接 ...
- 电脑显示无法加载远程访问连接管理服务器,win10系统宽带连接提示无法加载远程访问连接管理器服务错误711的解决办法...
win10系统使用久了,好多网友反馈说win10系统宽带连接提示无法加载远程访问连接管理器服务错误711的问题,非常不方便.有什么办法可以永久解决win10系统宽带连接提示无法加载远程访问连接管理器服 ...
- 使用连接管理器出现“安装程序无法复制文件”错误的解决方法
使用连接管理器出现"安装程序无法复制文件"错误的解决方法 在我们的企业中,使用"连接管理器"创建的***客户端连接程序,在运行安装程序的时候,有的机器出现&qu ...
- 远程桌面连接管理器RDCMan教程
今天是第一篇文章,给大家介绍一款实用工具:远程桌面连接管理器 ,英文名:Remote Desktop Connection Manager ,简称:RDCMan 微软官方的介绍: RDCMan 管理多 ...
最新文章
- hbase 默认目录_HBase 配置示例
- javascript 事件冒泡 和 冒泡事件阻止
- QT4到QT5的变化!
- 如何快速入手一个JavaWeb项目
- 初步了解并使用正则表达式 (REGular EXPression)
- python空类型用什么表示_python中怎么表示空值
- 文件写入的6种方法,这种方法性能最好
- when is oPropagatedProperties of detail view being generated
- 为普通Object添加类似AttachedProperty的属性
- Python 简单网页爬虫学习
- c语言虚参传递字符串,c语言中,一个函数作为另一个函数的虚参是什么意思? 先谢了...
- 移动商城第十四篇【收货地址查询、添加、更新】
- Java项目:高校教职工差旅报销管理系统(java+SSM+JSP+HTML+mysql)
- 设置http代理解决qq音乐pc版无法播放问题
- 如何查看 Ubuntu 版本和其他系统信息
- 高端游戏计算机配置,高端电脑:万元游戏主机配置推荐,从此告别卡顿!
- 各种Android实现边框
- 《Oracle内核技术解密》读书笔记(一)
- 5G网络架构(接入网,传输网,核心网)
- SSM框架解决QQ邮箱激活535 Error: ÇëʹÓÃÊÚȨÂëµÇ¼¡£ÏêÇéÇë¿´及端口25被占用问题
热门文章
- SqlServer递归查询树形结果数据
- JS常用函数(方法)
- 经典排序算法(十五)--耐心排序Patience Sorting
- 物流管理系统c语言程序设计,C语言程序设计物流管理系统.doc
- php 微信公众 验证失败,微信公众平台token验证失败
- abaqus帮助文档_Abaqus 屈曲特征值求解 非线性屈曲分析
- ROS采坑日记(1)----解决E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)的问题
- spf打包解包_SPF’校园管理项目实训-1
- 电脑的基础知识_电脑计算机网络基础知识
- python去除列表指定位置元素_Python实现判断并移除列表指定位置元素的方法