我正在使用SSIS创建到Postgresql服务器数据库的数据流任务。
我收到SQL查询错误:
查询无法解析。 HResult的异常:0x80040E14
请参见以下屏幕截图:
正在尝试查询的是:
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任务 警告:软件包:SSIS警告代码DTS_W_MAXIMUMERRORCOUNTREACHED:0x80019002。执行方法成功,但是引发的错误数(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 :(得分:0)
也许您应该更改函数名称并使用private函数才能正常工作。
INSERT INTO public.controlflow_example column name VALUES ('1');
答案 1 :(得分:0)
您是否要将结果集存储到SSIS对象中?结果错误表示您没有正确设置结果。如果不期望返回任何结果,则将结果集设置为空。如果是这样,请检查并确保正确返回结果。
祝你好运