我在2012年的SSIS工作的一个数据集市装载包当试图执行在Visual Studio中的包我得到这个错误:
“的AcquireConnection方法调用连接管理器数据Warehouse.ssusr,错误代码0xC0014009失败”。
当我测试的连接管理器数据Warehouse.ssusr的连接我看到它通过。
当我执行使用执行包实用工具的Visual Studio之外的包,包上运行。
我不明白这是怎么回事。
该软件包还拒绝使用SQL Server作业计划运行,如果有什么做什么。
我在2012年的SSIS工作的一个数据集市装载包当试图执行在Visual Studio中的包我得到这个错误:
“的AcquireConnection方法调用连接管理器数据Warehouse.ssusr,错误代码0xC0014009失败”。
当我测试的连接管理器数据Warehouse.ssusr的连接我看到它通过。
当我执行使用执行包实用工具的Visual Studio之外的包,包上运行。
我不明白这是怎么回事。
该软件包还拒绝使用SQL Server作业计划运行,如果有什么做什么。
在这里做一些假设,但我会认为这是一个32比64位的问题。 为了验证,尝试从命令提示符下这两个命令(Windows键,R,CMD.EXE或开始,运行,CMD.EXE)
"C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\dtexec.exe" /file C:\myPackage.dtsx
"C:\Program Files\Microsoft SQL Server\110\DTS\Binn\dtexec.exe" /file C:\myPackage.dtsx
首先将在32位模式下运行包,而第二运行时,它在64位模式。 这件事情影响的驱动程序和您所创建的任何DSN的打算只在32/64位世界可见。
一旦你确定你需要哪一个,可能是32位版本,你需要确保你的项目使用相应的运行时间。 右键单击您的项目,并选择属性,然后导航到下的配置属性调试选项卡。
反转Run64BitRuntime值之后,我想你的包将从中SSDT工作。
您需要编辑现有的SQL代理作业来改变作业步骤的bittedness。 这将是Configuration选项卡下,然后在高级选项卡下。 检查/取消选中32位运行。
细心的人可能会看到DTEXEC提供/X86
选项。 不要相信它。 才能得到正确的位岬的唯一方法是显式调用正确的dtexec.exe的文档,甚至说很多,但没有人读文件。
此选项仅用于SQL Server代理。 如果运行在命令提示符下dtexec实用工具,此选项将被忽略。