问题标签 [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.
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]
postgresql - SQL 查询出错:查询解析失败。HResult 异常:0x80040E14
我正在使用 SSIS 为 postgresql 服务器数据库创建数据流任务。
我收到 SQL 查询错误:
查询解析失败。HResult 异常:0x80040E14
见下面的截图:
正在尝试的查询是:
连接本身很好。架构是公开的,表确实拼写为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)。
请问有什么建议吗?
我已经在这里和其他地方搜索过类似的问题,但找不到解决方案。
谢谢你。
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 的内容拉入变量中。
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
存储过程:
ssis - 我有两个 Foreach 循环,它们具有相同的枚举值。那么我该如何处理呢?
我将两个变量声明为名为 a 和 b 的“对象”,并有一个简单的 SQL 任务:。
使用完整结果集,我试图将结果传递给声明的变量(a 和 b),
并在具有两个不同的foreach循环的脚本任务上使用它们(a和b)。但它没有用。
脚本任务:将结果插入两个不同的表(A 和 B)。
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 文件的文件夹具有完全访问权限,并且测试连接工作正常。
sql-server - 为什么foreach循环容器内的变量值为null
我有一个包含 foreach 文件枚举器的包。现在我有一个名为的变量EmailTo
,它由放置在循环容器之前的 foreach 容器外部的执行 sql 任务填充,因为我只需要运行一次执行 sql 任务。EmailTo
foreach 容器内的发送邮件任务正在访问该变量。当我检查断点时。我了解到在 foreach 容器中 EmailTo 变量的值为 null。这是为什么?
目前,我将执行 sql 任务移到了 foreach 容器中以使其工作,因为我必须将它呈现给我的老板,但是没有必要在循环中移动执行 sql 任务,因为我只需要获取一次电子邮件。
我应该怎么办。
sql-server - 执行 SQL 任务输出参数 vs ResultSet
我们在参数绑定中有参数方向作为输出,同时我们也有结果绑定。因此,如果我们有输出变量或返回类型变量,它们将在输出中可用,那么为什么我们需要 Result 绑定。