首页 文章

如何在未使用SQL Server代理作业安装excel的服务器上运行具有excel源的SSIS包

提问于
浏览
0

我有一个SSIS包,它使用自定义查询读取数据并将其存储到目标excel源中 . 通过右键单击并选择Run Package选项,我可以在没有安装excel的服务器上成功运行SSIS包 . 当我将相同的SSIS包添加到Integration服务并运行包时,它仍然可以成功执行 . 但是,当我使用SQL Server代理作业调度程序包时,它失败并出现以下错误:

“作为用户执行:用户名.Microsoft(R)SQL Server执行包实用程序版本10.50.2500.0(适用于32位版权所有(C)Microsoft Corporation 2010.保留所有权利 . 参数”连接“的参数”Excel“无效 . 命令行参数无效 . 步骤失败 . “

SQL Server规范:SQL SERVER 2008 R2作为SQL Server代理作业执行 .

尝试以下操作:1)选中“步骤”菜单中“执行选项”选项卡下的“使用32位”复选框,并取消选中“数据源”选项卡中的所有复选框 . 得到以下错误:

Executed as user: Username. Microsoft (R) SQL Server Execute Package Utility Version 10.50.2500.0 for 32-bit Copyright (C) Microsoft Corporation 2010. All rights reserved. Started: 9:44:03 PM Error: 2015-06-08 21:44:04.21 Code: 0xC002F304 Source: File System Task File System Task Description: An error occurred with the following error message: "The device is not ready. ". End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 9:44:03 PM Finished: 9:44:04 PM Elapsed: 1.219 seconds. The package execution failed. The step failed."

2)创建了具有sysadmin,public,serveradmin角色的代理帐户 . 建模包作为代理帐户运行 . 得到以下错误:

"Executed as user: Username. The process could not be created for step 1 of job (reason: 1314). The step failed." The command line looks almost similar to the below: /DTS "\File System\PackageName" /SERVER SERVERNAME /CONNECTION "InputFileConn.xlsx";"F:\Folder\InputFile.xlsx" /CONNECTION "OutputFileConn.xlsx 1";"F:\Folder\Output\OutputFile.xlsx" /CONNECTION "Excel Connection Manager 1";""Provider=Microsoft.ACE.OLEDB.12.0;Data Source=F:\Folder\Output\OutputFile.xlsx;Extended Properties=""EXCEL 12.0;HDR=YES"";"" /CONNECTION "SERVERINSTANCE.DBName";""Data Source=ServerInstance;Initial Catalog=DatabaseName;Provider=SQLNCLI10.1;Integrated Security=SSPI;Auto Translate=False;Application Name=SSIS-Package-SERVERNAME\SQLSERVER.DatabaseName;"" /X86 /CHECKPOINTING OFF /REPORTING E

是否有必要在服务器中安装excel以使SQL Server代理作业工作?

1 回答

  • 0

    根据上面的讨论,作业是指F驱动器,但F是在服务器上运行时预期的不同驱动器 .

相关问题