Поскольку вы используете SQL Express, вы не можете использовать агент SQL Server. Однако есть много альтернатив, все из которых вы можете запланировать с помощью schtasks или Windows Task Scheduler в зависимости от вашей операционной системы:
Все эти языки/инструменты (и многие другие) имеют возможность подключения к SQL Server и выполнения или. Вы также можете попробовать эти замены агента:
Вот пример использования VBScript:
Открыть Блокнот. Введите следующий код, заменив $ лексемы $ с реальными значениями:
s = "$your server/instance name$"
db = "$your database name$"
u = "$your SQL auth user ID$"
p = "$your SQL auth password$"
constr = "provider=SQLOLEDB;Data Source=" & s & ";Initial Catalog=" & s & _
";User ID=" & u & ";Password=" & p & ";Network=DBMSSOCN;"
Set conn = CreateObject("ADODB.Connection")
conn.Open constr
conn.Execute "EXEC dbo.$your procedure name$;"
conn.close: set conn = nothing
Сохранить этот файл как c:\somewhere\ScheduledProcedure.vbs
Откройте командную строку и введите следующую команду (это будет планировать этот скрипт для запуска на 15-го числа каждого месяца в полночь), все в одной строке:
schtasks /create /tn "some name"
/tr "wscript ""c:\somewhere\ScheduledProcedure.vbs"""
/sc monthly /d 15 /st 00:00
Чтобы увидеть эту задачу в списке запланированных задач (есть много, но это должно быть в первой группе):
schtasks /query
Если позже вы хотите удалить его:
schtasks /delete /tn "some name" /F
Thanx! будет искать что-то, что я знаю. В Visual Studio есть что-то вроде таймера, но не уверен, что он будет работать с asp.net. – Andrey
@ Andrey, что же это связано с asp.net? Если все, что вы пытаетесь сделать, это выполнить хранимую процедуру по расписанию, тот факт, что asp.net также использует эту базу данных в значительной степени неактуальной. –
У меня есть БД и что Db подключается к веб-сайту, написанному на ASP.Net, поэтому я думаю, что могу вызвать эту процедуру с сайта .Net с помощью таймера. – Andrey