2016-06-28 16 views
0

従業員がパンチインまたはアウトするたびにデータが挿入されるテーブルがあります。データが挿入されると、別のテーブルが更新されます。現在、スケジュールされたSQL Serverエージェントジョブを使用して毎分実行されるストアドプロシージャを使用してこれを実行しています。SQL Server Service Brokerを使用したスケジュール設定特定の期間の後にストアドプロシージャを呼び出す

これは正常ですが、オフピーク時には毎分実行する必要はありません。

データがテーブルに挿入されている場合のみ、毎分実行するストアドプロシージャを作成する方法はありますか?私は一度に複数のパンチを更新することができるように、ストアドプロシージャを挿入後すぐに実行する必要はなく、1分程度の指定間隔を置いてから実行する必要があるため、トリガが機能しない可能性があります。

答えて

0

最後のスキャンを追跡し、実行する作業がある場合にのみルーチンを実行します。 1分はポーリングには問題ありません。あなたがする必要があるのは、最後のスキャン日を保存し、パンチアウト/インタイムと比較することだけです。ただし、誤った最後のスキャン日をロジックで処理できなければならないことに注意してください。たとえば、偶然1年前に変更された場合などです。

関連する問題