用SSIS和Visual Studio导出SQL Server数据到Excel文件(下)

 
   | |

导读:本部分介绍了Excel文件所使用数据流组件的配置方法和字符映射数据转换组件的用法。

关键词:SQL Server 2005 Excel SSIS 数据库

正在加载数据... 【TechTarget中国原创】字符映射转换组件是在第一章中讲到的,但是在这里我们要体验一下它的转换功能。转换组件处理接收到的文本字符串,输出为转换后的字符串。例如:在上面我们看到的图片中,公司名是大小写混合的,使用转换组件后,我们会在数据写到Excel之前,把出现在公司名这一列的所有字符转换为大写——例如:Alfreds Futterkiste会转换为ALFREDS FUTTERKISTE。

【TechTarget中国原创】第四步:为SQL Server数据转换组件设置字符映射

  字符映射转换组件是在第一章中讲到的,但是在这里我们要体验一下它的转换功能。转换组件处理接收到的文本字符串,输出为转换后的字符串。例如:在上面我们看到的图片中,公司名是大小写混合的,使用转换组件后,我们会在数据写到Excel之前,把出现在公司名这一列的所有字符转换为大写——例如:Alfreds Futterkiste会转换为ALFREDS FUTTERKISTE。

  在工具箱的数据流转换组件组里选择字符映射数据流项,把它拖拽到数据流页面的设计画布上。

  在DataReader源组件上点击右键,在右键菜单项中点击添加路径。

  在弹出显示的数据流窗口中,选择转换目标为字符映射。如下图所示:

  在上面的窗口中点击确定(OK),此时会显示下面的新窗口。

  在这里你需要指定这个组件的输出项,从下拉列表里选择即可。

  从下拉列表里选择DataReader输出源。

  现在,在本教程中不涉及任务错误处理。选好上面的选项后,点击确定(OK)按钮就生效了。

  在上面的窗口中点击确定(OK)按钮。

  这就建立了从DataReader源到字符映射数据流组件的通道。通道建立好了,但仍然需要进一步配置。

  在字符映射组件上点击右键,在右键菜单中选择编辑。

  此时会弹出如下图所示的字符映射编辑器。选中列公司名前面的复选框。

  如果如上图所示的默认就被选中了,那么输出部分就会多出来一列。我们从下拉列表中选择“In-place change”选项。

  点击上面窗体中目标列下面的新建列单元格。在下拉列表中选择“In-place change”。

  在操作(Operation)下面点击,在出现的下拉列表中选中大写。如下图所示。

  输出别名不用修改,因为它在选中公司名时已经被关联修改了。

  在选择列表中点击确定(OK)按钮,然后点击字符映射转换编辑器中的确定(OK)按钮。

  字符映射配置就完成了。

  第五步:添加Excel目标组件并给字符映射组件创建路径

  在这一步中,我们将添加一个Excel目标组件。然后,我们会建立一个从字符映射组件到Excel目标组件的路径。

  从工具箱的数据流目标组件组选择Excel目标组件,把它添加到数据流页面上。

  可以通过在工具箱中双击该组件或者通过拖拽操作来完成这一步。在字符映射组件上右击,在弹出的邮件菜单中选择添加路径。

  此时会打开一个数据流窗口,在这里你可以建立一个数据流路径,显示“From:”路径为字符映射。

  点击“To:”旁边的下拉列表,会显示Excel目标组件和DataReader源组件。

  选择Excel目标组件,然后点击屏幕上的确定(OK)按钮。

  此时会打开一个输入输出选择窗口,窗口中会显示可用的输出和输入。输出窗口是空的,而输入显示Excel目标输入。路径应该从字符映射到Excel目标输入连接。

  选好上面的选项,然后点击屏幕上的确定(OK)按钮。

  你会看到有一条绿色的线从字符映射数据流组件连向Excel目标组件,如下图所示。建立连接路径的过程也可以被简化,可以通过在数据流页面上从字符映射到Excel目标组件拖拽一条绿箭头完成,与前面的做法一样的效果。如下图所示,你可以通过右击这条绿色箭头线,在右键菜单中选择”编辑……”来编辑路径。

  第六步:配置微软Excel目标组件

  前面步骤中的绿箭头代表了数据传递的路径。Excel目标组件也需要一个连接管理器。

  Excel目标组件连接在连接管理器中定义的链接属性来连接你硬盘上的微软Excel文件。

  在Excel目标组件上右击,在右键菜单中选择编辑。

  此时会弹出Excel目标组件编辑器。Excel需要一个OLEDB连接管理器,如果(你或者其他之前的用户)没有配置连接管理器,下拉列表就是空的。

  点击新建按钮。

  Excel连接管理器窗口如下面的图片显示。这里,你需要使用浏览按钮选择一个Excel文件作为转移数据的目标。包程序运行时,数据会被写到这个目标文件里。

  打开Windows资源管理器,在C盘创建一个Excel文件。在本教程中,我们创建一个名为TableToXls.xls的Excel文件。

  除了连接到一个已经存在的文件,Excel连接管理器还支持在你用浏览按钮选择的本机文件夹创建文件。

  现在就用浏览按钮找到刚刚创建的文件,并选中该文件。

  在Excel连接管理窗口中点击确定(OK)按钮。

  对于数据访问模式这一项,采用默认模式,表或者视图。

  你必须指定要使用的Excel sheet页的名称。(不要点击下拉列表来指定sheet页,下拉列表中会显示新创建Excel文件的三个Excel sheet页,它们都只有一列。)

  点击新建按钮。

  你现在正在创建一个新的Excel sheet页。弹出的创建表格的窗口中显示了即将导入组件的列,如下图所示。

  点击上图中的确定(OK)按钮。

  一个新的名为Excel Destination的Excel sheet也会被添加到TableToXLS.xls文件中。如果你打开检查一下该文件(TableToXLS.xls),你会看到列表的表头都已经添加到该页中了。

  在Excel目标组件编辑器面板左侧点击映射,会在右侧显示从输入到输出的映射。

  这里显示了从字符映射数据流组件导向目标文件的所有列,如下图所示。

  点击该窗口的确定(OK)按钮。现在,包已经完全配置好,可以运行了。

  第七步:测试从SQL Server数据库表向Excel sheet页执行数据转移

  在解决方案浏览器中右击,在右键菜单中点击执行包。

  数据流页面上的三个组件都变成了绿色,这表示包执行成功,没有错误。你可以检查“Canvas”中的进度标签,那里会显示包执行过程的所有细节。

  现在打开TableToXLs.xls文件看看。

  下图中显示了该文件中的几行数据。注意字符映射数据转换组件已经把公司名这一列的所有字符转换为大写了。

  总结

  本章讲述了以下内容:

  · 从SQL Server 2005数据库单个表中提取数据导入Excel文件所使用数据流组件的配置方法。

  · 字符映射数据转换组件的用法。

  选择Excel作为源,SQL Server数据库作为目标可以实现反方向的数据转移。

 
查看全文
 
 
 
 
 

SQL Server复制

 
如果你需要一个繁忙的数据库可以全球访问,云计算平台也是一个不错的选择,比如Windows Azure。
 
简单地说,复制就是SQL Server将你的数据拷贝同时从多个地方获取过来的方式。复制的形式包括快照、事务性、有更新订阅的事务性以及合并。
 
当SQL Server复制有大量数据需要传输时,为了保持更新,需要一定数量的网络带宽。如果带宽无法满足,那么复制将越来越缓慢。
 
当需要一个临时的数据下发时,我们可以使用快照复制。因为每次快照下发时,所有的数据都是一次性移动的,但是它需要花费大量的带宽。
 
SQL Server 复制是一个包含在Microsoft SQL Server的软件包,它用于以实例间一种迁移一致状态进行服务器间的数据移动。
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录