Вы можете сделать это программно двумя способами:
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, вам, возможно, придется использовать приведенный выше пример, но вместо strAlterProcCommandText = "ALTER PROC..."
выполните команду, которая добавит задание SQL.Обычно я создаю запрос sqljob следующим образом:
- Открыть SQL Server Management Studio
- В окне «Обозреватель объектов» какого-либо сервера я перехожу на: Агент SQL Server »Задания "Щелчок правой кнопкой мыши" Новое задание ...
- Затем создайте простое задание, которое будет выглядеть так, как будто я хочу его выполнить, присвойте имя созданному заданию
- Щелкните правой кнопкой мыши на добавленном задании и выполните следующие действия в контекстном меню: Задание сценария как «CREATE To» в новом окне редактора запросов
- Скопируйте созданный сценарий, настройте его параметры так, как вам нужно, изатем задайте
strAlterProcCommandText
.
Надеюсь, вы поняли мою идею.