我使用SQL Server 2008和.NET 3.5 Framework。
在我的程序中,数据库上的存储过程根据用户输入而改变。
用户可以确定其任务的日期。
所以,我想以一种方式编写程序,用于改变存储过程的SQL Job是由程序创建的。
如何以编程方式创建作业?
答案 0 :(得分:4)
您可以通过两种方式以编程方式执行此操作:
1。 如果您只需要改变程序:
// written from the head
...
using System.Data.SqlClient;
using Smo = Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;
string strConnectionString = ".......";
string strAlterProcCommandText = "ALTER PROC dbo.blablabla (..) AS .......\r\nGO";
using (var conn = new SqlConnection(strConnectionString))
{
conn.Open();
var server = new Smo.Server(new ServerConnection(conn));
var result = server.ConnectionContext.ExecuteNonQuery(strAlterProcCommandText);
Console.WriteLine("Result: " + result);
}
2。
或者,如果要使用SQL Job执行此操作,则可能必须使用上面的示例,而不是strAlterProcCommandText = "ALTER PROC..."
执行将添加SQL作业的命令。通常我会以这种方式生成一个sqljob查询:
strAlterProcCommandText
。希望你有我的想法。