Comment un triggersur peut-il être déclenché automatiquement après 5 jours?

J'ai une table Shoppping List avec des colonnes telles que:

 shopID, Product, DateTimeShopped, PaiedOrNot, ListStatus 

Mon exigence est de comparer le datetime actuel avec DateTimeShopped , si la list d'achats n'est toujours pas payée après 5 jours, puis étiquetez automatiquement le ListStatus à ListStatus .

Comment puis-je gérer le problème de time dans un triggersur dans SQL Server?

Merci.

Créer un SP ShoppingListSP

 declare @current datetime set @current = (select GETDATE() ) if ( datediff(@DateTimeShopped,@current ) > 5) begin update [Shopping List] set ListStatus = 'Blocked' where id=123123 end 

Créez ensuite un travail SQL qui exécute ce SP toutes les heures en arrière-plan.

 exec ShoppingListSP 

vous pourriez aussi avoir besoin de Curseurs pour travailler sur un set de données, ligne par ligne.

Réponse courte Tu ne peux pas.

Longue réponse Il est possible d'exécuter plus d'une simple déclaration à partir d'un triggersur, cependant, ce ne serait pas le meilleur endroit pour cela.

Une autre option . Je voudrais insert datatables dans une autre table et exécuter un proc stocké à partir de Sql Agent pour l'action en conséquence.