可以在 ASP.Net 页面中通过单击 按钮 触发从 SQL Server 代理 执行 作业 吗?

最佳答案

您可以使用 sp_start_job (Transact-SQL)





您可以将它用作存储过程,而不是在您的代码中运行它。

如果您的作业运行 dts 包,则可以使用 Package.Execute method



来自 MSDN 页面的示例;

    static void Main(string[] args)
    {
        Package p = new Package();
        p.InteractiveMode = true;
        p.OfflineMode = true;

        // Add a Script Task to the package.
        TaskHost taskH = (TaskHost)p.Executables.Add(typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask).AssemblyQualifiedName);
        // Run the package.
        p.Execute();
        // Review the results of the run.
        if (taskH.ExecutionResult == DTSExecResult.Failure || taskH.ExecutionStatus == DTSExecStatus.Abend)
            Console.WriteLine("Task failed or abended");
        else
            Console.WriteLine("Task ran successfully");
    }

关于c# - 如何从 SQL Server 代理运行作业?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20393714/

10-11 09:18