2015-02-23 2 views
-2

У меня есть задача сделать, но я точно не знаю, как это сделать. Мне нужна хранимая процедура для запуска каждые 5 минут и проверка, если новая запись была вставлена ​​в одну таблицу. Если новая запись будет найдена, тогда выполните вставку в другую таблицу, чтобы сделать копию этой записи, но если нет, то ничего не происходит, и обе таблицы остаются неизменными. Другими словами, мне нужно что-то похожее на триггер «после вставки», но я не хочу использовать триггер.Когда запись вставлена ​​в sql-сервер

+6

Как вы можете идентифицировать новую запись? Почему вы не хотите использовать триггер? Это очень важно для – Elliveny

+0

@emancia. Почему бы не использовать транзакцию, которая будет вставлять новую строку (строку копирования) во вторую таблицу, так как вы не предоставили много деталей, поэтому мое предложение также не имеет реализаций вашей бизнес-логики и ваших требований. –

+0

Вы имеете в виду [репликацию] (https://msdn.microsoft.com/en-us/library/ms151198.aspx)? – Andrew

ответ

0

Создайте хранимую процедуру, которую вы хотите запустить, а затем установите ее как запланированное задание на сервере sql, которое выполняется каждые 5 минут.

0

Выполняйте то, что предлагает jhilden с заданием SQL, работающим каждые 5 минут. SP нуждается в том, чтобы просмотреть последнюю запись в копии таблицы (отметка времени или MAX (ID), если вы сохраняете идентификаторы по двум таблицам), затем проверьте, есть ли (-ы) запись в исходной таблице с более высокой меткой времени (или идентификатором), если это так копировать ее/их через.

Смежные вопросы