标签: ssis

Integration Services Catalog用于执行包的用户凭据是什么?

我们有一个SSIS包,它从共享的网络目录中读取文本文件.当我在SSDT中执行此包时,它工作正常.然而,当我们将项目部署到Integration Services Catalog并尝试从那里运行相同的包时,我得到一个错误,表明拒绝访问该目录.

我一直认为,当我登录数据库并从Integration Services目录执行SSIS包时,它使用我的用户凭据,因此可以访问相关目录,因为我的用户配置文件可以访问它.

这不是这种情况吗?SQL Server是否使用其他用户来执行IS目录中的包?有选择run as another user吗?任何输入将不胜感激.

sql-server ssis sql-server-2012

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

SSIS SQL任务 - "参数名称无法识别"

我有一个SQL任务需要运行一个简单的更新来更新单行.

我已将SQLStatement设置为:

update agency set AgencyLastBatchSeqNo = ? where agencyID = ?
Run Code Online (Sandbox Code Playgroud)

在参数映射页面上,我将参数0和参数1设置为我知道包含正确值的变量.我还正确设置了参数名称值.

在数据库中,AgencyLastBatchSeqNo列是一个int,AgencyID是一个大int.有没有人参考找到SSIS中数据类型映射到的内容?我已经猜到了SHORT的int和LONG for big int.

当我运行任务时,我收到以下错误:

[执行SQL任务]错误:执行查询"更新代理商设置AgencyLastBatchSeqNo =?其中AgencyID =?" 失败并出现以下错误:"参数名称无法识别.".可能的故障原因:查询问题,"ResultSet"属性设置不正确,参数设置不正确或连接未正确建立.

任何人都可以建议可能出错的地方?

谢谢

抢.

ssis

32
推荐指数
2
解决办法
6万
查看次数

如何将SSIS中的ErrorCode和ErrorColumn转换为错误消息和列名?

我正在将行从平面文件源重定向到平面文件目标.重定向行中的默认元数据是:

  • 原始平面文件源行
  • ErrorCode
  • ErrorColumn

我在输出平面文件中得到的是源行(不错)和错误代码(不好,例如-1071628249)和错误列(不好,因为它是列的内部ID).

如何转换行以输出错误消息(例如"数据被截断.")和平面文件源中定义的列名?

换句话说,而不是...,-1071607675,10我想看到:

...,The data was truncated,Firstname

或者(如果以前不可能);

...,DTS_E_FLATFILESOURCEADAPTERSTATIC_TRUNCATED,Firstname.

ssis

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

如何从SSIS发出HTTP请求?

我很想知道如何从SSIS进行HTTP调用.例如,我希望能够从http://www.domain.com/resource.zip驱动器下载文件并记录下载的日期时间和文件的目标.我还希望捕获文件大小等属性,并捕获下载完成时的日期和时间.

ssis http

31
推荐指数
3
解决办法
7万
查看次数

如何循环使用Excel文件并使用SSIS包将它们加载到数据库中?

我需要创建一个SSIS包,用于将数据从多个Excel文件导入SQL数据库.我计划使用嵌套的Foreach循环容器来实现这一目标.一个Foreach文件枚举器并嵌套在其中,一个Foreach ADO.net模式行集枚举器

需要考虑的问题:Excel文件的工作表名称不同,但结构保持不变.

我创建了一个Excel连接管理器,但Schema Rowset Enumerator不接受Enumerator配置中的连接管理器.

经过研究,我发现您可以使用Jet Ole数据库提供程序连接到excel文件.但是,我只能指定Microsoft Access数据库文件作为数据源.尝试插入Excel文件作为数据源失败

经过更多研究后,我发现您可以使用带有连接字符串而不是DSN的Odbc数据提供程序.插入指定Excel文件的连接字符串后,这也失败了

我已被告知不要使用脚本任务来完成这个,甚至还试图最后的努力来提取数据表通过索引访问表后,我发现,在不同的Excel文件的表的索引是不同的

任何帮助将不胜感激

excel ssis

31
推荐指数
2
解决办法
13万
查看次数

通过SSIS获取SFTP或FTPS文件的最佳方法

这个问题最初询问哪种是在SSIS中通过SFTP或FTPS上传文件的最佳方法.现在只列出每种解决方案的优缺点.我个人现在使用CozyRoc的SFTP库,但我已经在某个方面使用了以下每个解决方案.

SSIS组件库

方法:从CozyRoc,Codeplex,BizCrypto,PragmaticWorks或每个开发和生产服务器上的某些其他供应商安装SSIS组件库,并使用SFTP任务上载文件.

优点:易于使用.它看起来,闻起来和感觉就像一个正常的SSIS任务.SSIS还将密码识别为敏感信息,并允许您保护敏感信息的所有常规选项,而不是仅以非安全方式将其存储为明文.适用于其他SSIS任务,例如ForEach Loop Containers.上传和下载失败时出错.当您不知道要下载的远程FTP站点上的文件名称或者在运行时之前您不知道要上载的文件的名称时,可以正常工作.

缺点:除了Codeplex解决方案之外,这需要花费在生产环境中许可.需要在每台开发和生产计算机上安装库.如果是Codeplex解决方案,那么您使用的是任何特定供应商都不支持的软件.这也使您依赖供应商在每个版本之间更新其库.例如,在2008 RTM之前,我在2008年的CTP版本上开发了一个新服务器,而CozyRoc 2005库与它不兼容.最终他们发布了2008兼容版本,但我不得不暂时使用命令行解决方案来解决这个问题.

命令行SFTP程序

方法:安装一个免费的命令行SFTP应用程序,如Putty和WinSCP,并通过运行批处理文件或操作系统进程任务来执行它.这里列出通过WinSCP执行此操作的说明.

优点:免费,免费,免费.如果您使用Putty,您可以确定它是安全的,因为许多GUI FTP客户端似乎使用Putty.您肯定知道您使用的是SSH2而不是SSH.

缺点:我尝试过的两个命令行实用程序(Putty和Cygwin)需要将SFTP密码存储在非安全位置.我没有找到一种在上传文件时捕获失败或错误的好方法.这个过程看起来并不像SSIS.大多数代码都封装在文本文件中而不是SSIS本身.如果您不知道要上载或下载的文件的确切名称,则很难使用.

一个3RD PARTY C#或VB.NET LIBRARY

方法:安装SFTP或FTPS库并使用引用库的脚本任务来上载文件.(我从未尝试过这个,所以我会猜测它的优点和缺点)

优点:可能很容易捕获错误.应该可以很好地处理变量,因此即使您不知道要上传或下载的文件的确切名称,它也可能很容易使用.

缺点:这是一个结合.NET库的脚本任务.如果您正在使用SSIS,那么您可能更熟悉SSIS任务,然后是.NET代码.脚本任务也很难排除故障,因为它们没有与常规.NET项目相同的调试工具和功能.创建对第三方代码的依赖关系,这些代码可能在不同版本的SQL Server之间不起作用.公平地说,它可能更有可能在不同版本的SQL Server之间工作,而不是第三方SSIS任务库.另一个巨大的骗局 - 我还没有找到一个免费的C#或VB.NET库.所以如果有人知道,那么请告诉我!

service integration sftp ssis ftps

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

SSIS连接管理器不存储SQL密码

我曾经有一个有sql server身份验证连接的dts.基本上,用户标识密码存储在包本身中.现在当我去SSIS时,密码没有存储到包中.当我谷歌问题时,我看到了这一点.http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/c720e694-2f58-483a-9cd7-3feb7de2db7b 但似乎没有人给出好的解决方案.你们有人可以帮忙吗?提前致谢

sql-server ssis sql-server-2005

30
推荐指数
4
解决办法
10万
查看次数

选择性地执行ssis控制流程中的任务

我有一个SSIS包,其中包含一系列执行sql任务的控制流.

我需要检查每个任务的标志并运行任务(如果已设置),如果没有跳过并转到下一个任务.

这些任务中的每一个都执行存储过程.所以我可以检查过程和"返回",如果没有设置.我正在寻找一个"SSIS"解决方案,如果有的话.

TIA

PS

sql-server ssis sql-server-2008

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

30
推荐指数
3
解决办法
11万
查看次数

使用Interop从excel获取Last非空列和行索引

我试图使用Interop Library从excel文件中删除所有额外的空白行和列.

我按照这个问题使用Interop从Excel文件中删除空行和列的最快方法,我发现它很有帮助.

但我有excel文件包含一小组数据,但有很多空行和列(从最后一个非空行(或列)到工作表的末尾)

我尝试在Rows和Columns上循环,但是循环需要几个小时.

我试图得到最后一个非空的行和列索引,所以我可以删除一行中的整个空范围

XlWks.Range("...").EntireRow.Delete(xlShiftUp)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

注意:我正在尝试获取包含数据的最后一行以删除所有额外的空格(在此行或列之后)

有什么建议?

c# vb.net excel ssis etl

29
推荐指数
4
解决办法
4501
查看次数