ssis - 从 SSIS 变量写入 Excel 目标
问题描述
我有 3 个 SSIS 变量,即名称、年龄、性别,并设置了初始值。我想将这些值连续写入 excel 工作表。稍后我会将其扩展到记录数组。
为此,我创建了Excel 连接,将 Excel 表附加到我要写入的位置。
我添加了控制流任务并双击,然后添加了派生列组件,为上述 3 个变量中的每一个创建派生列。在派生列编辑器中,我选择了上述变量作为新的派生列。
然后流水线化 excel 目标组件并将工作表列映射到派生列。我执行了 SSIS 包并成功。但是变量不会写入excel表。
我做错了什么?
解决方案
同样,您需要一个来源。我给了你一个“简单”的解决方案。这可能是您问题的最佳解决方案:
这次源将是一个脚本组件(选择源)。
添加脚本组件后的步骤:
- 选择来源
- 转到输入和输出
- 添加您的输出列(不要忘记数据类型)
- 返回脚本
- 添加变量(性别、姓名和年龄)
- 进入脚本
添加以下代码
public override void CreateNewOutputRows() { Output0Buffer.AddRow(); Output0Buffer.Age = Variables.Age; Output0Buffer.Gender = Variables.Gender; Output0Buffer.Name = Variables.Name; }
推荐阅读
- android - 询问位置权限后应用程序崩溃
- javascript - Array.reduce - 对象的奇怪行为
- c++ - MsWord API - 如何将表格单元格的内容从一个转移到另一个
- mysql - mysql查询语法错误,在mysql8.0之后不能在UNION之前使用LIMIT?
- python - 带有默认字段的Django模型序列化问题
- ruby-on-rails - 在任何带有Passenger的来源(Bundler::GemNotFound)中都找不到i18n-1.1.1
- ios - 如何分配“UIImage”类型的值?输入“UIView?”
- angular - 使用 Angular 原理图创建新模块
- java - org.springframework.dao.DataIntegrityViolationException on API 调用
- java - 改造抛出错误预期 BEGIN_OBJECT 但 BEGIN_ARRAY 从数组列表到列表?