SSIS 教程2025 年 3 月 8 日 | 阅读 13 分钟 ![]() SSIS 教程提供 SQL Server Integration Services 的基本和高级概念。我们的 SSIS 教程专为初学者和专业人士设计。 SQL Server Integration Service 是一个快速灵活的数据仓库工具,用于数据提取、转换和数据加载。它使得将数据从一个数据库加载到另一个数据库(如 SQL Server、Oracle、Excel 文件等)变得容易。 在本教程中,我们将讨论以下主题
什么是 SSIS?
SSIS 是主要用于执行两个功能的一个工具
什么是数据集成?数据集成是您用来集成来自多个源的数据的过程。数据可以是异构数据或同构数据。数据可以是结构化的、半结构化的或非结构化的。在数据集成中,来自不同异构数据源的数据被集成以形成有意义的数据。 实现数据集成的一些方法 ![]()
数据集成的好处![]()
为什么选择 SSIS?SSIS 因以下原因而被使用 ![]()
SSIS 如何工作?我们知道 SSIS 是一个用于两个功能的平台,即数据集成和工作流。数据转换和工作流创建都通过使用 SSIS 包来完成。SSIS 包包含三个组件 ![]() 操作数据操作数据是一个数据库,用于集成来自多个数据源的数据以对数据执行附加操作。它是数据在发送到数据仓库进行存储、报告或归档之前,用于当前操作的数据的存放位置。 ETL
ETL 是一个三词概念,但它分为四个阶段 ![]() 捕获:捕获阶段也称为提取阶段。在此阶段,它会提取源数据或元数据,数据可以是任何格式,如 xml 文件、平面文件或任何数据库文件。 清理:在此阶段,会检查原始数据。它会检查数据是否存在错误。它使用一些人工智能技术来检查数据中的错误或不一致。简而言之,它验证产品的质量是否达标。 转换:这是 ETL 的第三个阶段。转换是将原始格式转换为您想要的所需格式的过程。转换是根据用户需求对数据进行建模或更改。更改可能是列数或行数的更改。 加载和索引:第四个阶段是加载和索引。它加载数据并验证已处理的行数。数据加载完成后,将使用索引。索引可帮助您跟踪已加载到数据仓库中的行数。索引还有助于识别数据是否格式正确。 数据仓库数据仓库是数据的一个单一、完整且一致的存储,它通过合并来自多个数据源的数据而形成。 数据库和数据仓库的区别 答案可以是“是”也可以是“否”。数据库和数据仓库都有大量数据和相似的物理表示,但数据仓库中复杂查询的响应时间比数据库快。 SQL Server Integration Services 的要求安装 SQL Server Integration Services 的要求如下
请按照以下步骤安装 SQL Server Data Tools 步骤 1:单击链接 https://docs.microsoft.com/en-us/sql/ssdt/previous-releases-of-sql-server-data-tools-ssdt-and-ssdt-bi?view=sql-server-2017 下载 SQL Server Data Tools。 步骤 2:单击上述链接后,将显示如下屏幕 ![]() 在上面的屏幕中,选择您要安装的 SSDT 版本。 步骤 3:下载完成后,运行下载的文件。运行下载的文件后,将出现如下屏幕 ![]() 步骤 4:单击“下一步”按钮。 步骤 5:选择您要在 Visual Studio 2017 中安装的 Visual Studio 实例和工具。 ![]() 步骤 6:单击安装按钮。 什么是 SSIS 包?包是您在 SSIS 中编写代码的基础块。这里的代码不意味着您正在使用某种编程语言编写代码;它指的是您进行的开发。开发是在 SSIS 包中完成的。SSIS 主要用于 ETL 过程,ETL 过程在 SSIS 包内执行。 SSIS 包由三部分组成 ![]()
SSIS 任务在 SSIS 包中,我们可以添加任务。任务是一个工作单元,我们将有不同类型的任务来执行不同类型的工作。有各种类型的任务,但我们将讨论 SSIS 中最常用的任务
让我们看一些数据集成服务的实际示例。 数据流任务示例步骤 1:首先,我们在 Microsoft Excel 中创建一个 Excel 文件。假设我在 Microsoft Excel 中创建了学生数据库,学生表中的字段是 student_id、student_name、marks 和 gender。 ![]() 步骤 2:打开 Visual Studio(SQL Server Data Tools)。 ![]() 步骤 3:单击“文件”选项,然后选择“新建”->“项目”。 ![]() 步骤 4:单击“项目”后,将显示如下屏幕 ![]() 在上面的屏幕中,单击面板最左侧的“Integration Services”,然后单击“Integration Services Project”。 步骤 5:单击“Integration Services Project”选项后,将显示如下屏幕 ![]() 上面的屏幕包含五个选项卡,如控制流、数据流、参数、事件处理程序和包资源管理器。我们已经讨论了控制流和数据流,控制流和数据流都存在于 SSIS 包中。 步骤 6:为了导入数据,我们首先需要创建一个数据库,并在其中创建表。我们知道学生数据在 Excel 文件中,并且我们想将数据导入 SQL Server 数据库。为了实现这一点,我们首先需要创建 SQL Server 中的表。打开 SQL Server Management Studio。 步骤 7:创建 **student** 数据库。右键单击数据库,然后单击“新建数据库”选项。 ![]() 步骤 8:在下面的屏幕截图中输入数据库名称 ![]() 我将数据库名称命名为 StudentWarehouse。 步骤 9:单击确定按钮。 步骤 10:现在,我们在 **StudentWarehouse** 数据库中创建表。右键单击“表”,然后单击“新建表”。 ![]() 步骤 11:现在我们在表中添加字段,如 student_id、student_name、marks 和 gender。我们将 student_id 设置为主键,它唯一标识每一行。 ![]() 上面的屏幕显示我们在表中添加了四个字段。添加完表中的所有字段后,我们通过提供有用的名称来保存表。假设我将 student 命名为表名。 步骤 12:返回 Visual Studio。控制流包含数据流任务,将数据流任务拖放到主窗口上。 ![]() 步骤 13:双击数据流任务时,控件会自动从控制流移动到数据流,所以我们可以说控制流是数据流的容器。 步骤 14:现在,我们可以在数据流中执行转换。我们要从之前创建的 Excel 文件中提取数据,所以从面板最左侧出现的其他源中拖放 Excel 源。 ![]() 从上面的屏幕,我们观察到 Excel 源内部出现了一个红色的叉号,这意味着该组件已配置为 Excel 源。 步骤 15:要配置组件,请右键单击 Excel 源并单击“编辑”选项,如下图所示 ![]() 步骤 16:填写如下屏幕所示的详细信息 ![]() 步骤 17:输入所有详细信息后,将显示如下屏幕 ![]() 步骤 18:单击 Excel 源。 ![]() 上面的屏幕显示了两个箭头,红色和蓝色箭头。蓝箭头定义了我们从 Excel 文件接收的实际数据,红箭头表示我们拥有的错误。现在我们需要执行转换,在执行转换之前,我们需要加载数据库。 步骤 19:要加载数据库,请单击“其他目标”,然后单击“目标”。 ![]() 步骤 20:添加目标后,将源连接到目标。 ![]() 步骤 21:在上一步中,我们注意到 ADO NET 目标中有一个红色的叉号,这意味着它尚未配置组件。右键单击 ADO NET 目标,然后单击“编辑”选项,如下图所示 ![]() 步骤 22:您需要指定配置管理器。 ![]() 步骤 23:单击“新建”按钮添加连接管理器。单击“新建”按钮后,将出现如下屏幕 ![]() 步骤 24:添加服务器名称并从 SQL Server 中选择数据库名称。 ![]() 步骤 25:单击确定按钮。 步骤 26:添加要加载数据的表名。 ![]() 步骤 27:在下面的屏幕中,将输入源的字段映射到目标源的字段。 ![]() 步骤 28:添加映射后,源将连接到目标,如下图所示 ![]() 步骤 29:单击开始按钮运行 Integration Services Project。运行项目时,数据将加载到目标,即 **SQL Server**。 执行 SQL 任务示例
![]() 在上面的屏幕中,我们观察到 Execute SQL Task 中出现了一个红色的叉号,这意味着 **Connection Manager** 未与 **Execute SQL Task** 配置。要配置它,我们需要添加连接管理器。
![]()
![]()
![]() 在上面的屏幕中,我们观察到 **StudentWarehouse** 数据库的数据连接已可用,因为我们在上一步中已创建。单击确定按钮。
![]() 在上面的屏幕中,您需要输入详细信息,例如任务名称、描述、SQL 语句(您需要在表上执行的 SQL 任务)。
![]() 在上面的情况下,我在 SQLStatement 中提供了 insert 命令。
![]()
![]()
![]() 在上面的屏幕中,勾号表示您的 SQL 任务已成功完成。我们之前输入的 insert 语句已执行,数据已添加到表中,即 student1。
![]() 前提条件在学习 SSIS 之前,您必须对 SQL Server 有基本的了解。 目标受众我们的 SSIS 教程旨在帮助初学者和专业人士。 问题我们保证您不会在本 SSIS 教程中遇到任何问题。但是,如果存在任何错误或疏漏,请在联系表格中发布错误。 下一主题# |
我们请求您订阅我们的新闻通讯以获取最新更新。