我只有一行从sql query(count(*)
)返回,但在执行包时,它显示上面的错误,包失败.
我将结果类型设置为"单行",并将query(select count(*) as 'result' from abc.tbl_nm
)的输出映射到Int32类型的变量.
我有一个ssis项目,其中主包包含许多子包.使用执行包任务调用所有子包.我需要将master的"开始日期"值传递给所有子包.我知道我们有参数绑定选项,我们可以在其中传递变量值,它仅适用于项目引用.但问题是所有子包的引用类型都是"外部引用".因此禁用参数绑定.是否有任何方法可以将值从父级传递给子级以用于引用类型:"外部引用".我正在使用SQL Server 2014 Datatools.
我正在尝试使用SSIS将数据从SQL Server数据库导出到excel文件中.我想从第6行插入数据,第5行有标题.
通过编写SQL命令,我可以将Excel目标编辑器中的标题名称映射到SQL表头:
SELECT * FROM [Sheet1$A5:EC5]
Run Code Online (Sandbox Code Playgroud)
但是,当我执行包时,数据从第2行插入如何从第6行开始插入?
任何帮助,解决这个,是值得赞赏的.提前致谢!
我想使用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 表,一个平面文件 (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),但是我无法弄清楚如何获取不匹配的记录。任何帮助,将不胜感激。
我是 SSIS 的新手。
我使用执行 SQL 任务创建了 SSIS 包。我调用了一个存储过程。我的存储过程打印了一些消息,如“插入开始”“更新开始”“更新完成”,但它不返回任何结果集。
如何将存储过程的输出写入 SSIS 中的日志文件。
请帮助我,我过去两天一直在挣扎。
我试过像这样使用 DTExec
DTExec /f "C:\Users\Karthick\Desktop\SSIS\Package.dtsx">MyOutput.txt
但它只打印 Execute SQL Task 值而不是存储过程打印语句。
在服务器上应用 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) 我正在使用 SSIS 2016。
存储过程位于 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 2008
的PostgreSQL server
.
问题是,在Import/Export Wizard
中Wizard
说,他无法找到正确的文件到正确转换。(如果我继续他导出而不检查导致错误转换的原因-> 数据不会导出,只有表定义)
我相信解决方案是制作请求的文件 - 但我不知道如何。这是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
有没有人做过这个或任何想法我能做什么?
我在 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) ssis ×10
ssis-2008 ×10
sql-server ×6
sql ×3
excel ×2
ssis-2012 ×2
c# ×1
etl ×1
file-mapping ×1
postgresql ×1
script-task ×1
security ×1
ssis-2016 ×1
winscp-net ×1