ssis中动态表创建和加载数据

2024-02-01

我对 ssis 有一点疑问,文本文件具有基于位置的位置数据,需要在 sql server 中动态创建表并使用 ssis 包加载相关位置数据, 源文本文件具有如下所示的示例数据

编号 |名称 |地点 1 | abc |海德 2 |巴努|陈 3 |杰|邦 4 |哈里|海德 5 |纳尼 |海德 6 |班提|邦 7 |卡利 |陈

基于此文本文件加载,我们需要动态创建位置表并加载相关数据。因为有时文本文件中可能有更多位置,这种情况我们需要动态创建表并加载它。请告诉我如何使用来完成此任务ssis.我们需要 foreach 循环容器,但不知道如何实现这个。请告诉我解决这个问题


1)DFT任务(获取不同的位置和各自的表名称)

  • 创建第一个 DFT 以从文件中获取不同的位置。添加聚合转换并将输入列指定为位置,然后选择操作作为 GroupBy,这将为您提供文件中的不同位置
  • 然后,添加派生转换以获取位置及其各自的表名称 表名 - (DT_STR,50,1252)("dbo.LocationList" + 位置) 位置 - (DT_STR,50,1252)位置
  • 添加记录集目标并将 TableName 和 Location 值存储在对象类型的变量(名称 = Locations)中

2)Foreach循环容器任务(创建表并存储数据)

  1. Foreach 循环容器配置 -

    • 选择枚举器作为“Foreach ADO 枚举器”
    • 选择源变量作为“位置”
    • 枚举器模式 - 第一个表中的行
    • 在变量映射中,分别在两个变量“location”和“Locationtable”中获取位置和相应的表名称。
  2. 在容器中添加 SQL 任务(如果不存在则创建表)

    • 提供 SQL 源表达式为 -

    "如果 Object_Id('" + @[User::Locationtable] + "') IS NULL 创建表 " + @[用户::位置表] + " ( id 整数, 名称 Varchar(50) )”

  3. 在容器中添加DFT任务(将数据导入到各自的表中)

    • 添加平面文件源以从同一源文件获取加载数据
    • 添加条件分割并添加表达式“location == @[User::location]”以获得匹配的输出
    • 添加 OLEDB 目标并将访问模式设置为“OpenRowset using FastLoad From Variable”
    • 选择变量“用户::位置表”

注意 - 您需要为“User::Locationtable”变量提供默认值,该变量具有数据库中存在的表名称并且具有相同的架构,以便您可以映射第二个 DFT 任务中的列。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ssis中动态表创建和加载数据 的相关文章

  • SSIS 错误 - 包中的版本号无效

    失败作业对应的日志如下 2014 年 4 月 11 日 06 40 00 LPR New 错误 0 USPHND0088 LPR New 作业 结果 作业失败 该作业由 Schedule 14 调用 LPR New Job 最后运行的一步是
  • 枚举DataFlow脚本组件中的RecordSet作为数据源

    这是一个 SSIS 相关问题 我有一个设置为对象类型的变量 一个数据流将一些过滤的行导入到记录集中 并且该记录集存储在对象变量中 在完全独立的数据流中 我需要使用该记录集作为源 所以我创建了一个脚本组件并告诉它它将是一个数据源 我将其设置为
  • 如何将 FTP 目录的内容复制到共享网络路径?

    我需要将 FTP 位置上的目录的全部内容复制到共享网络位置 FTP 任务要求您指定确切的文件名 不是目录 而文件系统任务不允许访问 FTP 位置 EDIT 我最终编写了一个脚本任务 没有什么比恢复一个非常旧的线程更好的了 但是有一个解决方案
  • 在 SSIS 中插入新记录之前如何清空目标表?

    我使用 SSIS 生成和转换新数据 以便以后在新系统中使用 每次运行 SSIS 包时我都会遇到问题 它不断将新记录插入到我的目标表中 如何先清空目标表 OLE DB Destination 然后插入新生成的记录 目前此问题的解决方法是执行d
  • 使用 SSIS 将数据从 Oracle 导入到 SQL Server 时出现代码页错误

    我在 SSIS 包中的 OLEDB 源上收到以下警告 警告 1 验证警告 数据流任务 20582F6F DD9C 45F5 8727 992F525E67DC 无法检索该列 来自 OLE DB 提供程序的代码页信息 如果组件支持 Defau
  • Foreach 循环编辑器中缺少枚举器

    我在一台新笔记本电脑上 在 Visual Studio 2015 中的 SQL Server Integration Services 包上工作 在以前版本的 Visual Studio 中 枚举器配置部分中有几个选项 如下所示 在 VS
  • SSIS ODBC SQL 参数

    我在 odbc 源数据流任务中有一个 SQL 命令需要采用参数 但不存在添加参数的选项 我尝试将数据库添加为与 ODBC 提供程序的 ADO NET 连接 但也没有可用的参数 还尝试将其作为 OLEDB 连接 但没有可用于 ODBC 的提供
  • 在 SSIS 中使用 OLE DB 从 Sybase 提取数据时出错

    我在 SSIS 2017 中使用 Advantage 11 OLE DB Provider 从 Sybase 提取数据时遇到问题 我可以连接到数据库 查看表列表 并且在选择表作为数据源时 我可以看到列 但是 当我单击 预览 或运行数据流任务
  • SSIS使用列位置而不是名称导入Excel文档

    我想知道是否可以通过按位置引用列来使用 SSIS 导入 Excel 文档 例如 导入列 A D M AA 等 我问这个问题是因为我需要从第三方加载多个 Excel 文档 每个文档在相应的列中包含相同的数据类型 但每个文档的列名称不同 Tha
  • 从 PowerShell 运行 SSIS 包,无需部署项目

    This https learn microsoft com en us sql integration services ssis quickstart run powershell view sql server ver16 ssis
  • 如何查询集成服务目录

    问题 识别连接到 SQL Server 上特定数据库表的所有 SSIS 包 详细信息 服务器上部署了近 100 个包 大多数包的大小都很大 因此很难以高精度手动检查它们 有没有一种快速且自动化的方法来做到这一点 使用 SQL Server
  • 使用 C# 中的 Google 地图 API 和 SSIS 包获取行驶距离

    更新 找到了谷歌距离矩阵并尝试相应地修改我的代码 我在这里收到无效参数错误 return new GeoLocation dstnc uri ToString catch return new GeoLocation 0 0 https 基
  • 如何使用 ssis 2008 循环遍历 Excel 文件并获取工作表名称

    我正在尝试将 Excel 文件中的数据加载到 SQL 数据库表中 该文件的工作表名称不是静态的 工作表名称包含 yyyymmdd 它会随每个文件而变化 我按照提供的解决方案进行操作如何使用 SSIS 包循环遍历 Excel 文件并将其加载到
  • 如何在 ssis 包 2016 中捕获毫秒时间戳

    如何在 ssis 包 2016 中捕获当前时间戳 我声明了一个变量并使用表达式 但缺少毫秒 currenttimestamp DT WSTR 50 DT DBTIMESTAMP System StartTime 我也想要毫秒 Thanks
  • 脚本任务无法在 Visual Studio 2013 中打开编辑器

    我正在使用 SSIS 2014 和 Visual Studio 2013 当我单击脚本任务的 编辑脚本 按钮时 没有错误 没有任何反应 但脚本编辑器没有打开 我在我的机器上安装后什么也没发生 Microsoft Visual Studio
  • 在 SSIS 中使用合并任务的指南

    我有一个包含三个字段的表 其中一个是身份字段 我需要从具有其他两个字段的源中添加一些新记录 我正在使用SSIS 我认为我应该使用合并工具 因为其中一个源不在本地数据库中 但是 我对合并工具和正确的过程感到困惑 我有一个源 一个 Oracle
  • SSIS Excel 导入强制错误的列类型

    我正在尝试使用 SSIS 将电子表格导入到我们的数据库中 由于某种原因 当其中两列包含字符数据时 SSIS 希望相信它们的类型为 Double 我尝试将列重新映射为 nvarchar 255 但它仍然不想选择它认为是双精度的数据 因为其中有
  • 如何在 SSIS 脚本任务中传递自定义对象列表?

    我有一个脚本任务 它创建自定义对象列表并将它们设置为 SSIS 对象变量 定制类 public class Dog public string Name get set 用于填充列表并设置为 SSIS 对象变量 myDogs 的代码 pub
  • ssis 输出 json 文件添加额外的 crlf

    这个问题已经用c 代码解决了 请参考这篇文章the post https stackoverflow com questions 54059599 ssis generate json file remove return 54084996
  • SSIS - 在整个项目中更改对变量/参数的引用

    我创建了一个 SSIS 项目 认为它将以项目部署模式进行部署 我的很多包都有 2 个参数 称为P OdsTbl and P SrcEtl 每当我使用执行包任务时 我都会将子参数绑定到父参数 我发现该项目将以包部署模式部署 这意味着我需要将参

随机推荐

  • MySQL 中的枚举是否需要为 NOT NULL?

    可以说我有这个 ALTER TABLE asdf ADD field ENUM Y N DEFAULT N 是否需要在末尾添加 NOT NULL 因为它只能是 Y 和 N EDT 根据评论 如果我知道软件总是将其设置为 N 或 Y 并且被硬
  • HttpGet 属性的路由名称 asp.net core 2 中基本通用控制器类的名称

    我有一个通用控制器 它有几个派生的控制器类 但我不知道如何处理 HttpGet路线名称因为它需要常数 HttpGet id Name should not hard coded here for derived class public v
  • iPhone sdk 中提供不同类型的 CATransition 类型

    有谁知道可用 CATransition 的不同类型名称的链接 如同涟漪 迅疾 我想知道所有可用的名称 这些是可用的类型 kCATransitionFade kCATransitionMoveIn kCATransitionPush kCAT
  • 一个 HTML 文件中存在多个不同的页面

    有没有办法让多个不同的 HTML 页面包含在一个 HTML 文件中 例如 假设我有一个有两个页面的网站 Page 1 click here for page 2 and Page 2 click here for page 1 我是否可以创
  • InkCanvas 到位图

    我在将画布保存为 BMP 文件 或任何其他类型 时遇到问题 我试图像这样保存我的 InkCanvas int margin int canvas Margin Left int width int canvas ActualWidth ma
  • Swagger 漂亮的 HTML 代码在哪里?

    只有uglyHTML 页面可下载 HTML HTML2 和动态都丑陋 但该网站 例如 已编辑https app swaggerhub com apis user project version 以及许多其他 提供漂亮的 HTML 界面 如何
  • 使用 C 替换文件中的单词

    如何使用以下命令将文件中的单词替换为另一个单词C 例如 我有一个文件 其中包含 my friend name is sajid 我想替换这个词friend with 祖父 使得该文件更改为 my grandfather name is sa
  • R 中的 Excel YIELD 函数

    我试图弄清楚 Excel 中的 YIELD 函数如何运行其计算 以便我可以在 R 中创建一个使用类似输入的类似函数 以下是有关该函数的 Excel 文档 http office microsoft com en us excel help
  • 如何从 _layout SharePoint 页面使用网站母版页?

    我想在我的 SharePoint 12 hive template layouts TelephoneBookList test aspx 文件中使用母版页文件 如果有意义的话 就是网站的母版页文件 但是 每当我将 MasterPageFi
  • Mysql:每月记录数(包括零)

    我正在尝试计算表中的记录并按日期对它们进行分组 我当前的查询如下所示 SELECT count MONTH time as month YEAR time as year FROM myTable GROUP BY month year O
  • 使用 Swing 和 Graphics2D 在 Java 中旋转轮子?

    我正在研究一个可以绕中心旋转轮子的课程 轮子是使用graphics2d创建的 但我无法确切地弄清楚如何让轮子绕中心旋转 目前 轮子旋转 但不完全围绕原点旋转 我的最终目标是创建一个具有多种颜色的轮子以及围绕它的程序 但我主要关心的是让旋转轮
  • 我用的plyr对吗?我似乎使用了太多内存

    我有以下有点大的数据集 gt dim dset 1 422105 25 gt class dset 1 data frame gt 在不执行任何操作的情况下 R 进程似乎占用了大约 1GB 的 RAM 我正在尝试运行以下代码 dset lt
  • Jenkins job DSL 插件 - 隐藏参数

    我正在使用詹金斯隐藏参数插件 https wiki jenkins ci org display JENKINS Hidden Parameter Plugin但我找不到像使用其他参数那样在 DSL 中编写它的语法 例如 https jen
  • ImportError:使用 Jupyter Notebook 时没有名为 numpy 的模块 - Google Cloud Dataproc

    在 Google Dataproc 上启动 Jupyter Notebook 时 导入模块失败 我尝试使用不同的命令安装模块 一些例子 import os os sytem sudo apt get install python numpy
  • 使用 Python、文件

    我有一些需要读取的数据文件 我知道我应该使用 Dataset 但是有没有一种方法可以下载这些文件 而无需手动下载 而是通过其 URL 来下载 在我的例子中会是什么样子 我正在使用 conda python 和 netCDF4 无论我做什么
  • 如何在 Yii2 中进行多次 UPSERT?

    我正在使用 Yii2 高级模板 我必须在 MySql 数据库中插入 1000 到 2000 条记录 是否可以制作多个UPSERT 查询 in Yii2 请帮助我提供您的建议 答案 谢谢 从版本 2 0 14 开始 您可以使用 upsert
  • pandas:添加具有其他两列中任意一列的值的新列

    pd DataFrame A None 2 None None 3 4 B 1 2 3 4 5 6 A B 0 NaN 1 1 2 2 2 NaN 3 3 NaN 4 4 3 5 5 4 6 如何添加列C这将从列中获取值A如果不是 NaN
  • 如何将车辆品牌的 NCIC 代码值转换为 DCCIS 代码值?

    业务分析师告诉业务规则这已经改变了 现在他们希望我首先检查 计数 以查看是否有多个 NcicCode 在 VehicleMakeMapping 查找文档中 与 MncisCode 在输入文档中 匹配 如果 VehicleMakeMappin
  • Xcode 5.1 构建 opencv 在 64 位模拟器上失败

    我将 Xcode 更新到 5 1 使用 opencv 框架 2 4 的 iOS 应用程序项目中出现了许多错误 我的电脑是 macbook air 和 OSX 10 9 2 当我编译我的项目时 当我使用 Iphone Retina 3 5 英
  • ssis中动态表创建和加载数据

    我对 ssis 有一点疑问 文本文件具有基于位置的位置数据 需要在 sql server 中动态创建表并使用 ssis 包加载相关位置数据 源文本文件具有如下所示的示例数据 编号 名称 地点 1 abc 海德 2 巴努 陈 3 杰 邦 4