【问题标题】:Exception from HRESULT: 0x800A03EC while running through SQL Agent来自 HRESULT 的异常:通过 SQL 代理运行时出现 0x800A03EC
【发布时间】:2018-12-26 16:01:42
【问题描述】:

我在 ssis pacakge 中有一个脚本任务。脚本任务代码:

          string xlsPath = Dts.Variables["User::FilePath"].Value.ToString();

            Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
            app.Visible = false;
            Microsoft.Office.Interop.Excel.Workbook workbook = app.Workbooks.Open(xlsPath);
            Microsoft.Office.Interop.Excel.Worksheet worksheet = workbook.Worksheets[1];
            int ColumnIndex = 4;
            worksheet.Columns[ColumnIndex].TextToColumns();
            worksheet.Columns[ColumnIndex].NumberFormat = "0";
            workbook.Save();
            workbook.Close();

我在 VS2015 中运行包时没有问题,但是通过 sql 代理运行它时会抛出以下错误:

来自 HRESULT 的异常:0x800A03EC。

我正在使用 xls 文件。

【问题讨论】:

标签: c# ssis


【解决方案1】:

您可以在脚本中添加 try...catch... 以捕获确切的错误消息。

可能是权限问题,代理作业中使用的帐户(默认为 SQL Server 代理服务帐户)无权访问 Excel 文件。

解决方案是使用代理帐户运行包,该帐户具有足够的权限。

How to create a Proxy Account and use it to run SSIS package

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-02
    • 1970-01-01
    • 2021-03-21
    • 1970-01-01
    相关资源
    最近更新 更多