关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » SQL Server »使用SQL Server 2008导入平面文件(1)

    使用SQL Server 2008导入平面文件(1)

    2011-04-11 12:55:00 出处:ITJS
    分享

    导读:SQL Server 2008推出了一个强大的数据集成和转换应用程序,叫做SQL Server集成服务(SSIS)。SSIS的一个主要功能是将数据移入和移出SQL Server。外部的数据源可以以任何格式存在,另一个数据库、Excel工作表、XML文件或一个平面文本文件,这只是仅举几例。数据不仅可以从数据源移到目的地,而且它还可以在它移动时被操纵和改变。这些改变可能是简单的转换,比如小数四舍五入或将名称的一个字母大写,也可能是极其复杂的数据转换。虽然SSIS可以做的任务列表几乎是没有结尾的,但是该文文章将关注于导入一个文本文件到一个标准的SQL Server数据库表中去。

    BIDS

    SQL Server集成服务应用程序是在BIDS(商业智能开发套件)中创建的。BIDS是一个Visual Studio工具,包含在SQL Server内。除了创建SSIS包,BIDS还可以用来为SQL Server报表服务和分析服务创建应用程序。就像SQL Server管理套件是SQL的“瑞士军刀”一样,BIDS是一个用于创建导入、导出和数据操纵程序的全能开发工具。

    建立

    在第一个练习中,我们将导入一个包含联系名称的文本文件到SQL Server中去。没有循环或编程,只是一个简单的文件导入示例。我创建了一个包含五个联系人的文本文件,它们由竖线隔开,如下所示。

    Gustavo |Achong |1970 Napa Ct. |London

    从Control Flow Items 的菜单里,拖拉一个“Data Flow Task”对象到设计器上。Data Flow Task将数据从数据源移动到另一个。我右键单击了这个任务并重新命名它为dftContacts,如下所示。

    图2

    双击这个任务,进入到它的Data Flow属性中。在这个数据流中,我们将定义我们的文本文件源和SQL Server目标表以及哪些数据字段要移到哪里。

    从左边的Data Flow Services菜单中,拖拉一个“Flat File Source”对象到Data Flow界面上。双击它来打开它的属性。点击New按钮来创建到这个文本文件的一个新连接。在Flat File Connection Manager编辑器中,我命名它为“TextFileContacts”,然后浏览到硬盘上这个文件的位置。

     

     

    图3

    双击Columns菜单项,然后指定一个|(竖线)作为字段分隔符。点击刷新按钮将显示这个文本文件的五条数据记录。

     

     

    图4

    点击OK返回到Flat File Source Editor。接下来,我们将给这些字段一个头名称。尽管这不是所要求的,但是它使得这个包更加易读。点击左边菜单中的“Columns”。在Output字段中,将名称从Column 0、1、 2、3改为FirstName、 LastName、Address和City,如下所示,然后点击OK。

      

    图5

    我们的平面文件导入对象现在完成了。接下来,我们将指定我们的目标SQL Server表。从左边的菜单中,在工具箱的Data Flow Destination区域中,拖拉一个“SQL Server Destination”到Data Flow工作区域上。接下来,点击Flat File Source并从它拖拉绿色箭头到新的SQL Server Destination。

    图6

    这指定了这个数据将从Flat File流向SQL Server目标。注意目标图标中的红色X。这意味着这个对象没有被配置。双击SQL Server Destination对象来打开它的属性。点击Connection Manager上的New,然后点击Configure OLE DB Connection Manager上的New。接下来,指定你的SQL Server名称,验证方法和目标表的名称。点击“Test Connection”按钮来确认连接是有效的。点击OK然后再点击OK返回到SQL Design Editor。接下来,从“Use a table or view”下拉列表中选择新创建的Contacts表。因为我们在SQL Server表中具有的字段比Flat File源中的多,所以点击左边菜单中的“Mappings”来核实字段将正确地流出。源和目标应该和SQL Server表匹配,State 和Zip字段被忽略,因为在平面文件源中没有任何用于它们的导入数据,如下所示。点击OK。

    图7

    这个包现在完成了。点击顶部菜单中的保存图标。要运行这个包,点击顶部菜单中的绿色三角形。这个包将以调试模式执行。当每个对象成功完成后,它将变成绿色。平面文件中的数据记录转移到了SQL server中。

    总结

    SQL Server 集成服务(SSIS)是一个全能的导入、导出、转换管理器。只要进行少量的练习,就可以很容易地使用BIDS的图形化界面来创建复杂的工作。上文中也给出了详细的分析,希望能够对大家学习SQL Server数据库有所帮助。

    导读:SQL Server 2008推出了一个强大的数据集成和转换应用程序,叫做SQL Server集成服务(SSIS)。SSIS的一个主要功能是将数据移入和移出SQL Server。外部的数据源可以以任何格式存在,另一个数据库、Excel工作表、XML文件或一个平面文本文件,这只是仅举几例。数据不仅可以从数据源移到目的地,而且它还可以在它移动时被操纵和改变。这些改变可能是简单的转换,比如小数四舍五入或将名称的一个字母大写,也可能是极其复杂的数据转换。虽然SSIS可以做的任务列表几乎是没有结尾的,但是该文文章将关注于导入一个文本文件到一个标准的SQL Server数据库表中去。

    BIDS

    SQL Server集成服务应用程序是在BIDS(商业智能开发套件)中创建的。BIDS是一个Visual Studio工具,包含在SQL Server内。除了创建SSIS包,BIDS还可以用来为SQL Server报表服务和分析服务创建应用程序。就像SQL Server管理套件是SQL的“瑞士军刀”一样,BIDS是一个用于创建导入、导出和数据操纵程序的全能开发工具。

    建立

    在第一个练习中,我们将导入一个包含联系名称的文本文件到SQL Server中去。没有循环或编程,只是一个简单的文件导入示例。我创建了一个包含五个联系人的文本文件,它们由竖线隔开,如下所示。

    Gustavo |Achong |1970 Napa Ct. |London

    Catherine|Abel |9833 Mt. Dias Blv.|London

    Kim|Abercrombie |7484 Roundtree Drive|London

    Humberto|Acevedo|9539 Glenside Dr|London

    Pilar|Ackerman |1226 Shoe St. |Oxford

    每一行包括一个First Name、 Last Name、Address和City。竖线(|)分隔数据的每一列。SQL Server没有要求必须是竖线。任何分隔符都可以使用,包括普通格式的Tab、空格和逗号。我复制了上面的联系人到记事本中并将它们保存在我的C:驱动盘上。在SQL Server中,我使用下面的TSQL创建了一个数据库叫做“Test”和一个Contacts表:

    CREATE TABLE [dbo].[Contacts](

    [FirstName] [varchar](50) NULL,

    [LastName] [varchar](50) NULL,

    [Address] [varchar](50) NULL,

    [City] [varchar](50) NULL,

    [State] [varchar](50) NULL,

    [Zip] [varchar](50) NULL

    ) ON [PRIMARY]

    这个新的Contacts表包括叫做“State”和“Zip”的字段,它们不出现在我们的文本文件中。SSIS在我们的导入过程中将忽略这些字段。

    BIDS

    要开始这个例子,通过选择Start->All Programs->Microsoft SQL Server 2008,然后是Microsoft SQL Server Business Intelligence Development Studio(BIDS)从而在Windows中打开BIDS。一个空的BIDS 界面将打开。从顶部的菜单中选择File->New Project。在New Project对话框中,选择Business Intelligence Project->Integration Service Project,然后指定一个项目名称和目录。这个位置不需要和我们将要导入的文本文件位置一样。

     

     

    图1

    点击OK将弹出一个空白的设计器。注意,设计器顶部有四个标签页:Control Flow、Data Flow、Event Handlers和Package Explorer。在SSIS中创建的程序叫做包,而Package Explorer是用来导航它们的。在本文中我们将关注的标签页是Control和Data Flow标签页。“Control”项是一个对象容器,它使我们的程序具有结构、功能或约束。Data Flow项移动和/或转换数据值。我认为对于这两个标签页,我们是以相同的方式来分隔GUI代码和业务逻辑的。Control定义是“什么”( FTP Task、Import Task、Send Mail Task),而Data Flow指定谁以及怎么做。

    从Control Flow Items 的菜单里,拖拉一个“Data Flow Task”对象到设计器上。Data Flow Task将数据从数据源移动到另一个。我右键单击了这个任务并重新命名它为dftContacts,如下所示。

    图2

    双击这个任务,进入到它的Data Flow属性中。在这个数据流中,我们将定义我们的文本文件源和SQL Server目标表以及哪些数据字段要移到哪里。

    从左边的Data Flow Services菜单中,拖拉一个“Flat File Source”对象到Data Flow界面上。双击它来打开它的属性。点击New按钮来创建到这个文本文件的一个新连接。在Flat File Connection Manager编辑器中,我命名它为“TextFileContacts”,然后浏览到硬盘上这个文件的位置。

     

     

    图3

    双击Columns菜单项,然后指定一个|(竖线)作为字段分隔符。点击刷新按钮将显示这个文本文件的五条数据记录。

     

     

    图4

    点击OK返回到Flat File Source Editor。接下来,我们将给这些字段一个头名称。尽管这不是所要求的,但是它使得这个包更加易读。点击左边菜单中的“Columns”。在Output字段中,将名称从Column 0、1、 2、3改为FirstName、 LastName、Address和City,如下所示,然后点击OK。

      

    图5

    我们的平面文件导入对象现在完成了。接下来,我们将指定我们的目标SQL Server表。从左边的菜单中,在工具箱的Data Flow Destination区域中,拖拉一个“SQL Server Destination”到Data Flow工作区域上。接下来,点击Flat File Source并从它拖拉绿色箭头到新的SQL Server Destination。

    图6

    这指定了这个数据将从Flat File流向SQL Server目标。注意目标图标中的红色X。这意味着这个对象没有被配置。双击SQL Server Destination对象来打开它的属性。点击Connection Manager上的New,然后点击Configure OLE DB Connection Manager上的New。接下来,指定你的SQL Server名称,验证方法和目标表的名称。点击“Test Connection”按钮来确认连接是有效的。点击OK然后再点击OK返回到SQL Design Editor。接下来,从“Use a table or view”下拉列表中选择新创建的Contacts表。因为我们在SQL Server表中具有的字段比Flat File源中的多,所以点击左边菜单中的“Mappings”来核实字段将正确地流出。源和目标应该和SQL Server表匹配,State 和Zip字段被忽略,因为在平面文件源中没有任何用于它们的导入数据,如下所示。点击OK。

    图7

    这个包现在完成了。点击顶部菜单中的保存图标。要运行这个包,点击顶部菜单中的绿色三角形。这个包将以调试模式执行。当每个对象成功完成后,它将变成绿色。平面文件中的数据记录转移到了SQL server中。

    总结

    SQL Server 集成服务(SSIS)是一个全能的导入、导出、转换管理器。只要进行少量的练习,就可以很容易地使用BIDS的图形化界面来创建复杂的工作。上文中也给出了详细的分析,希望能够对大家学习SQL Server数据库有所帮助。

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    Edge浏览器百度被劫持/篡改怎么办,地址后边跟着尾巴#tn=68018901_7_oem_dg

    Google Chrome 在 iPhone 上新增了 Safari 数据导入选项

    Windows 11专业版 KMS工具激活产品密钥的方法

    DEDECMS安全策略官方出品

    Microsoft Text Input Application 可以关闭吗?

    新版本QQ如何关闭自带的浏览器?

    C++编程语言中continue的用法和功能,附举例示范代码

    c++ map 的数据结构、基本操作以及其在实际应用中的使用。

    C语言如何避免内存泄漏、缓冲区溢出、空指针解引用等常见的安全问题

    C语言中的break语句详解

    IT头条

    马斯克2026最新采访总结:2040年,全球机器人数量将突破100亿台

    23:52

    专家解读|规范人工智能前沿业态健康发展的新探索:解读《人工智能拟人化互动服务管理暂行办法》

    00:54

    用至强 6高存力搞定MoE卸载!

    17:53

    美国将允许英伟达向中国“经批准的客户”出售H200 GPU

    02:08

    苹果与微信就15%手续费达成一致?腾讯未置可否

    22:00

    技术热点

    PHP 和 Node.js 的10项对比挑战

    Javascript闭包深入解析及实现方法

    windows 7、windows 8.1手动增加右键菜单功能技巧

    MYSQL出错代码大汇总

    windows 7假死机怎么办 windows 7系统假死机的原因以及解决方法

    Ubuntu(Linux)下配置IP地址的方法

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。