Обновление базы данных ASP.NET каждый час - PullRequest
1 голос
/ 19 сентября 2011

Я хочу скопировать одну строку из таблицы A в таблицу B в час на моем сайте asp.net.Как я могу это сделать?Нужно ли приложение win32?Я бы хотел этого избежать.

Ответы [ 5 ]

6 голосов
/ 19 сентября 2011

Звучит так, будто вы хотите создать хранимую процедуру и использовать планировщик заданий Sql Server, чтобы запускать ее каждый час. См. здесь для получения подробной информации о настройке

Или, если вы используете Sql Express, посмотрите этот вопрос «Как запускать хранимую процедуру каждый день в SQL Server Express Edition?»

В идеале вы бы не делали этого с помощью IIS и т. Д., Если только по какой-то причине у вас нет доступа к базе данных.

2 голосов
/ 19 сентября 2011

Я бы согласился с Броди. Альтернативно создайте пакет служб SSIS и запустите его как задание SQL или запланированное задание из командной строки (используя DTEXEC).

http://msdn.microsoft.com/en-us/library/ms365302.aspx - показывает, как создать базовое решение.

http://decipherinfosys.wordpress.com/2008/09/17/scheduling-ssis-packages-with-sql-server-agent/ - Показывает, как запланировать задание.

Для вашего упражнения любой из них поможет. Я бы предложил использовать любой из них, который вы чувствуете себя более знакомым. Но, конечно, не стоит предлагать создание сервиса, управляемого таймером.

2 голосов
/ 19 сентября 2011

Вы можете создать веб-страницу, которая выполняет это, и использовать бесплатный сервис, такой как pingdom.com, чтобы звонить на эту страницу каждый час.

EDIT: Мой путь - легкий, вероятно, не лучшее решение, но быстрый и простой

Вы также можете проверить это: http://blog.stackoverflow.com/2008/07/easy-background-tasks-in-aspnet/

2 голосов
/ 19 сентября 2011

Вы можете использовать Таймер .Если вы используете SQL Server, вы также можете запланировать работу непосредственно в БД.

0 голосов
/ 19 сентября 2011

см. Этот пример для создания нового потока в глобальном asax, http://www.mikesdotnetting.com/Article/129/Simple-task-Scheduling-using-Global.asax

Имейте в виду, что если веб-сайт не работает, процесс не будет продолжаться, если это является проблемой пакетного задания sql илиСлужба Windows подойдет лучше, и, если задача ресурсоемкая, в любом случае лучше сделать это на другом компьютере, так как глобальный метод asax заберет ресурсы обработки у вашего сайта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...