标签: ssis-2008

错误:对于完整结果集和XML结果,必须将结果绑定名称设置为零

我只有一行从sql query(count(*))返回,但在执行包时,它显示上面的错误,包失败.

我将结果类型设置为"单行",并将query(select count(*) as 'result' from abc.tbl_nm)的输出映射到Int32类型的变量.

ssis ssis-2008

11
推荐指数
1
解决办法
2万
查看次数

如何将父变量值传递给子包以用于引用类型:外部引用

我有一个ssis项目,其中主包包含许多子包.使用执行包任务调用所有子包.我需要将master的"开始日期"值传递给所有子包.我知道我们有参数绑定选项,我们可以在其中传递变量值,它仅适用于项目引用.但问题是所有子包的引用类型都是"外部引用".因此禁用参数绑定.是否有任何方法可以将值从父级传递给子级以用于引用类型:"外部引用".我正在使用SQL Server 2014 Datatools.

屏幕截图1

屏幕截图2

sql sql-server ssis ssis-2008 ssis-2012

7
推荐指数
1
解决办法
7026
查看次数

跳过行:将数据从SSIS导出到excel文件中

我正在尝试使用SSIS将数据从SQL Server数据库导出到excel文件中.我想从第6行插入数据,第5行有标题.

在此输入图像描述

通过编写SQL命令,我可以将Excel目标编辑器中的标题名称映射到SQL表头:

SELECT * FROM [Sheet1$A5:EC5]
Run Code Online (Sandbox Code Playgroud)

但是,当我执行包时,数据从第2行插入如何从第6行开始插入?

任何帮助,解决这个,是值得赞赏的.提前致谢!

sql-server excel ssis ssis-2008

7
推荐指数
1
解决办法
2520
查看次数

将字符串变量转换为GUID

我想使用Execute SQL Task查询varbinary从数据库表中返回数据.查询需要一个参数,UniqueIdentifier参数存储string在Package变量中.此查询的结果(varbinary数据)将存储在Byte类型的第二个变量中.

下表显示了我的局部变量列表,请注意DocumentGuid是由控制流的另一部分预先填充的

| Variable Name | Qualified Name     | Scope   | Data Type | Comments                                 |
|---------------|--------------------|---------|-----------|------------------------------------------|
| DocumentGuid  | User::DocumentGuid | Package | String    | Used to store a GUID value               |
| DocumentData  | User::DocumentData | Package | Byte      | Used to hold varbinary data from a query |
Run Code Online (Sandbox Code Playgroud)

当我尝试在这样的Execute SQL Task查询中使用它时:

SELECT DocData 
FROM  docsRepo
WHERE DocumentGuid = ?
Run Code Online (Sandbox Code Playgroud)

传递参数为

| …
Run Code Online (Sandbox Code Playgroud)

sql sql-server ssis uniqueidentifier ssis-2008

6
推荐指数
1
解决办法
1091
查看次数

如何在 SSIS 数据流中的两个源之间获取不匹配的数据?

我有两个数据源,一个 sql 表,一个平面文件 (csv)。两个来源具有完全相同的列。示例数据:

桌子:

HCN  Name  Surname   DOB
111  John   Black    2013-12-10
222  Jack   White    1989-01-14
333  Brian  Brown    2000-04-22
Run Code Online (Sandbox Code Playgroud)

平面文件:

HCN  Name  Surname   DOB
111  John   Black    2013-12-10
444  Alex   Smith    1978-05-16
Run Code Online (Sandbox Code Playgroud)

请注意,列 HCN 是主键。我需要做的是获取表中包含的此类记录,但 FlatFile。

预期输出:

HCN  Name  Surname   DOB
222  Jack   White    1989-01-14
333  Brian  Brown    2000-04-22
Run Code Online (Sandbox Code Playgroud)

我必须在我的 SSIS 包的数据流中执行此操作。我正在下面做以获取匹配的记录(HCN:111),但是我无法弄清楚如何获取不匹配的记录。任何帮助,将不胜感激。

在此处输入图片说明

sql ssis ssis-2008

6
推荐指数
1
解决办法
3913
查看次数

如何记录 SSIS 执行 SQL 任务的输出

我是 SSIS 的新手。

我使用执行 SQL 任务创建了 SSIS 包。我调用了一个存储过程。我的存储过程打印了一些消息,如“插入开始”“更新开始”“更新完成”,但它不返回任何结果集。

如何将存储过程的输出写入 SSIS 中的日志文件。

请帮助我,我过去两天一直在挣扎。

我试过像这样使用 DTExec

DTExec /f "C:\Users\Karthick\Desktop\SSIS\Package.dtsx">MyOutput.txt

但它只打印 Execute SQL Task 值而不是存储过程打印语句。

ssis ssis-2008 ssis-2012

5
推荐指数
1
解决办法
7219
查看次数

SSIS 2008 R2 -“Excel 连接管理器”失败,错误代码为 0xC0202009

在服务器上应用 Microsoft 的 10 月补丁后,我们面临以下错误。

我们已将 Run64BitRunTime 设置为 false 并将 DelayValidation 设置为 True 并更改了 excel 文件夹的路径。仍然面临以下问题。

Error: 0xC0202009 at SSIS_Document_Report, Connection manager "Excel Connection Manager": SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available.  Source: "Microsoft JET Database Engine"  Hresult: 0x80004005  Description: "Unexpected error from external database driver (1).".
Error: 0xC020801C at SSIS_Get_Document_Report, Excel Destination [436]: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.  The AcquireConnection method call to the connection manager "Excel Connection …
Run Code Online (Sandbox Code Playgroud)

sql-server security excel ssis ssis-2008

5
推荐指数
0
解决办法
2890
查看次数

执行具有多个结果集的存储过程

我正在使用 SSIS 2016。

  • 存储过程返回 4 个结果集。
  • 只有第一个结果集是相关的,需要写入表中。
  • 我无法修改存储过程。
  • 我不关心其他结果集中返回的任何数据。

存储过程位于 SQL Server 2016 数据库中。结果也将驻留在 SQL Server 2016 中。

我目前在 SSIS 2008 中使用 OLE DB 源中的“SQL 命令”数据访问模式运行此进程,如下所示。我将其放在 For Each 循环容器中,以便将一系列参数值传递给存储过程,因为我每天对不同的参数值执行多次。

SET FMTONLY OFF;

EXEC myProc
     @Param1 = ?,
     @Param2 =?,
     @Param3 = ?;
Run Code Online (Sandbox Code Playgroud)

默认情况下,SSIS 2008 仅返回第一个结果集,这对我有用,因为我只关心第一个结果集。

我正在使用本机 OLEDB SQL Server 客户端。据我所知,它改变了处理多个结果集的方式。我已经使用 来WITH RESULT SETS定义第一个结果集,但是如果我执行 SSIS 将失败,指示需要定义其他结果集。

简而言之,在 SSIS 2016 中复制 SSIS 2008 中的功能的最佳方法是什么?

sql-server ssis etl ssis-2008 ssis-2016

5
推荐指数
1
解决办法
1万
查看次数

导出向导 SQL Server Management Studio 找不到映射文件无法转换数据类型以适合 Postgresql

我想将数据库从我们SQL Server 2008PostgreSQL server.

问题是,在Import/Export WizardWizard说,他无法找到正确的文件到正确转换。(如果我继续他导出而不检查导致错误转换的原因-> 数据不会导出,只有表定义)

我相信解决方案是制作请求的文件 - 但我不知道如何。这是XML-files您在其中找到的两个:

C:\Program Files (x86)\Microsoft SQL Server\110\DTS\MappingFiles
Run Code Online (Sandbox Code Playgroud)

我在这些网站上找到了一些信息,但我无法将这些信息放在一起以使其有意义:

我正在使用 SQL Server Studio Management 2017,通过 .Net Framework Data Provide for Odbc 导出。我的计划是文件 alá MSSql10ToODBC.XML 和 SSIS10ToODBC.XML

有没有人做过这个或任何想法我能做什么?

sql-server postgresql ssis file-mapping ssis-2008

5
推荐指数
0
解决办法
872
查看次数

在处理 WinSCPnet.dll FileTransferProgress 时,如何在 SSIS 脚本任务中使用 DTS.Events.FireInformation()?

我在 SSIS (2008) 包中有一个脚本任务,用于将文件从远程 FTP 服务器下载到本地目录。脚本任务是用 C# 2008 编写的,并使用 WinSCPnet.dll。使用 WinSCP 文档中的示例,我想出了下面的脚本。该脚本可以正确下载文件,但所有文件成功/失败消息都会保留,直到整个脚本完成,然后所有消息都会立即转储。使用 根本不显示文件进度Console.Write(),并且尝试使用Dts.Events.FireInformation()inSessionFileTransferProgress给了我

Error: "An object reference is required for the non-static field, method, or property Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase.Dts.get"

有没有办法使用 DTS.events.Fire* 事件来显示文件发生时的进度信息以及每个文件后的文件完成状态?

脚本:

/*
   Microsoft SQL Server Integration Services Script Task
   Write scripts using Microsoft Visual C# 2008.
   The ScriptMain is the entry point class of the script.
*/

using System;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.ScriptTask;
using System.AddIn;
using WinSCP;

namespace ST_3a1cf75114b64e778bd035dd91edb5a1.csproj
{
    [AddIn("ScriptMain", Version = "1.0", …
Run Code Online (Sandbox Code Playgroud)

c# ssis ssis-2008 winscp-net script-task

5
推荐指数
1
解决办法
1万
查看次数