问题标签 [execute-sql-task]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
78 浏览

sql-server - 无法识别 ssis sp 中的表变量

我在 ssis 中创建了一个名为Vpop_summary_table.

我在 sql 语句中使用了这个变量。

我的变量

vpop_summary_table

预计会提供价值

[dbo].[2019-02-02_pop_table]

在ssis中很好。

我的表被创建为[@Vpop_summary_table]而不是[dbo].[2019-02-02_pop_table]

0 投票
2 回答
926 浏览

postgresql - SQL 查询出错:查询解析失败。HResult 异常:0x80040E14

我正在使用 SSIS 为 postgresql 服务器数据库创建数据流任务。

我收到 SQL 查询错误:

查询解析失败。HResult 异常:0x80040E14

见下面的截图:

https://ibb.co/7KcBnMG

https://ibb.co/zR093SQ

正在尝试的查询是:

连接本身很好。架构是公开的,表确实拼写为controlflow_example,列是整数类型,命名为rollnumber

即使使用

因为一个更简单的查询给出了同样的错误。

如果我尝试运行该软件包,它会失败并出现以下错误:

SSIS 包“C:\Users\AJ\Documents\Visual Studio 2017\Projects\control_flow_example\control_flow_example\Package.dtsx”开始。错误:执行 SQL 任务时出现 0xC002F210,执行 SQL 任务:执行查询“INSERT INTO public.controlflow_example(rollnumber)...”失败,出现以下错误:“HRESULT 异常:0x80040E14”。可能的失败原因:查询有问题,“ResultSet”属性设置不正确,参数设置不正确,或连接未正确建立。任务失败:执行 SQL 任务警告:包中的 0x80019002:SSIS 警告代码 DTS_W_MAXIMUMERRORCOUNTREACHED。Execution 方法成功,但引发的错误数 (1) 达到了允许的最大值 (1);导致失败。当错误数量达到 MaximumErrorCount 中指定的数量时,就会发生这种情况。更改 MaximumErrorCount 或修复错误。SSIS 包“C:\Users\AJ\Documents\Visual Studio 2017\Projects\control_flow_example\control_flow_example\Package.dtsx”完成:失败。程序“[15288] DtsDebugHost.exe:DTS”已退出,代码为 0 (0x0)。

请问有什么建议吗?

我已经在这里和其他地方搜索过类似的问题,但找不到解决方案。

谢谢你。

0 投票
2 回答
173 浏览

sql - 由于路径格式设置,SSIS 优先约束不起作用

使用 SSIS 和 MS-SQL Server 2012

我有一个 SQL 任务正在执行:

它从不返回除 0 之外的任何内容,因为 SSIS 文件名如下所示:

表中的文件名如下所示:

我不认为我想像那样将文件名插入到表中,所以我如何/在哪里格式化,以便我可以进行匹配以使我的约束依赖于此触发。

谢谢!

在此处输入图像描述

在此处输入图像描述

好的,如果我在 SQL 管理器中运行这个查询,它就可以工作。

当我将等效项放入 SQL 语句的 SQL 任务编辑器中时,它仍然返回 0

0 投票
2 回答
2804 浏览

sql-server - 将 SSIS 项目中的文件读入变量

我的 SSIS 项目倾向于运行在环境之间移动时需要更改的查询,例如表架构可能会更改或 Where 子句中的值。我总是将我的 SQL 放入项目参数中,因为格式丢失,因此很难编辑,或者直接将其放入执行 SQL 任务/数据流源中,然后在迁移之间手动编辑它,这也不理想。

我想知道如果我将我的 SQL 脚本添加到项目中的文件中,这些可以读回吗?例如,如果我提出这样的查询: select id, name from %schema%.tablename 我想将它读入一个变量,那么很容易使用表达式,就像我对项目参数所做的那样,用适当的替换 %schema%价值。然后可以轻松编辑项目中的 .sql 文件,甚至可以通过在项目进入部署流程之前禁用/删除的执行 SQL 任务进行测试。但是我一直无法找到如何使用项目中的相对路径读取文件。此外,我什至不确定这些是否已部署到 SSIS 服务器。

感谢您的任何见解。

我已将文本文件 query.sql 添加到 Visual Studio 中的 SSIS (SQL 2017) 项目中,但我发现无法将 query.sql 的内容拉入变量中。

0 投票
1 回答
190 浏览

sql - 将结果存储在 Execute Sql 任务中

我编写了一个存储过程,它将在执行后返回列 BEID、Date_of_txn、Txn_Amount 作为结果。我在 SQL Server Management Studio 中运行存储过程时手动获取结果。但我想在 SSIS 中使用“执行 SQL”任务执行这个存储过程,并将结果存储在一个变量中。我怎样才能做到这一点?

我不知道如何将结果存储在结果集中,因为当我运行包时,包每次都失败。

  • 结果集:Single Row
  • 连接类型:OLE DB
  • 联系:LocalHost.Fino_Detail
  • SQL语句:Exec sp_HighAmount 02, 2019

存储过程:

0 投票
1 回答
76 浏览

ssis - 我有两个 Foreach 循环,它们具有相同的枚举值。那么我该如何处理呢?

我将两个变量声明为名为 a 和 b 的“对象”,并有一个简单的 SQL 任务:。

使用完整结果集,我试图将结果传递给声明的变量(a 和 b)

并在具有两个不同的foreach循环的脚本任务上使用它们(a和b)。但它没有用。

脚本任务:将结果插入两个不同的表(A 和 B)。

0 投票
1 回答
378 浏览

visual-studio - 使用执行 SQL 任务在 SSIS 中执行过程的问题

我使用 Execute SQL 任务从数据库中写入三个变量值,如果我检查值是否使用断点正确写入,一切似乎都是正确的。现在我想使用之前在另一个执行 SQL 任务中编写的变量来执行一个过程。问题是变量的值没有正确映射(我认为)。我认为变量不是全局的(事实上,当我检查变量时,值始终为零,而在我编写变量的任务的调试过程中,变量不为零)。我该如何解决这个问题?

这就是我调用该过程的方式:

(我有 4 个变量)。

这是参数映射:

在此处输入图像描述

它们在查询中按问号的顺序排列。它们都是 INT 类型。

0 投票
0 回答
274 浏览

sql - SSIS包无法执行OPENROWSET存储过程

SQL Server 2017 上的存储过程调用 OPENROWSET 命令从 .xlsx 文件加载文件。

在服务器上运行存储过程时,它工作正常,并将 xlsx 行加载到数据表中。但是,当 SSIS 包运行 Execute T-SQL Statement 任务来执行相同的存储过程时,它给了我这个错误:

“[执行 SQL 任务] 错误:执行查询“EXEC USP NAME”失败,出现以下错误:“无法为链接服务器“(null)”初始化 OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”的数据源对象. 链接服务器“(null)”的 OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”返回消息“未指定错误”。可能的失败原因:查询有问题,“ResultSet”属性设置不正确,参数设置不正确,或未正确建立连接。”

包中使用的连接对包含 xlsx 文件的文件夹具有完全访问权限,并且测试连接工作正常。

0 投票
1 回答
382 浏览

sql-server - 为什么foreach循环容器内的变量值为null

我有一个包含 foreach 文件枚举器的包。现在我有一个名为的变量EmailTo,它由放置在循环容器之前的 foreach 容器外部的执行 sql 任务填充,因为我只需要运行一次执行 sql 任务。EmailToforeach 容器内的发送邮件任务正在访问该变量。当我检查断点时。我了解到在 foreach 容器中 EmailTo 变量的值为 null。这是为什么?

目前,我将执行 sql 任务移到了 foreach 容器中以使其工作,因为我必须将它呈现给我的老板,但是没有必要在循环中移动执行 sql 任务,因为我只需要获取一次电子邮件。

我应该怎么办。

0 投票
1 回答
2998 浏览

sql-server - 执行 SQL 任务输出参数 vs ResultSet

我们在参数绑定中有参数方向作为输出,同时我们也有结果绑定。因此,如果我们有输出变量或返回类型变量,它们将在输出中可用,那么为什么我们需要 Result 绑定。