2

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

我收到 SQL 查询错误:

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

见下面的截图:

https://ibb.co/7KcBnMG

https://ibb.co/zR093SQ

正在尝试的查询是:

INSERT INTO public.controlflow_example(rollnumber) VALUES (1)

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

即使使用

SELECT * 
FROM public.controlflow_example 

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

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

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)。

请问有什么建议吗?

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

谢谢你。

4

2 回答 2

0

也许您应该更改函数名称并使用 private 它可以正常工作。

INSERT INTO public.controlflow_example column name VALUES ('1');
于 2019-05-11T11:52:22.093 回答
0

您是否尝试将结果集存储到 SSIS 对象中?结果错误意味着您没有正确设置结果。如果您不期望返回任何结果,则将结果集设置为空。如果是,请检查以确保正确返回结果。

查看如何返回结果https://www.google.com/amp/s/www.red-gate.com/simple-talk/sql/ssis/ssis-basics-using-the-execute-sql-task-生成结果集/amp/

祝你好运

于 2019-05-11T18:08:21.213 回答