Winforms中的SQL作业状态

时间:2014-03-24 20:37:54

标签: c# sql .net sql-server winforms

我创建了一个Windows应用程序,它可以在SQL Server上启动SQL作业。这就是我编写代码来触发工作的方式。

SqlCommand ExecJob = new SqlCommand();

ExecJob.Connection = sqlConn;
ExecJob.CommandType = CommandType.StoredProcedure;
ExecJob.CommandText = "msdb.dbo.sp_start_job";
ExecJob.Parameters.AddWithValue("@job_name", "DataImport");

sqlConn.Open();
ExecJob.ExecuteNonQuery();

它运行良好并在大约40秒内完成。在此作业成功完成之前,我不想在程序中启用某些特定功能。有谁知道我怎么做到这一点?

2 个答案:

答案 0 :(得分:1)

在这里,您可以找到一篇文章,介绍如何获取sql作业的状态。

How can I determine the status of a job?

然后,您只需要定义一个汇集数据库并请求作业状态的计时器。

答案 1 :(得分:0)

我认为我理解你的问题......最好的方法是将存储过程的输出设置为特定值,然后将该值传递给程序并检查值以查看天气应根据proc是否成功运行来启用或禁用函数。