Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Exécuter une procédure stockée à partir d'un formulaire Windows de manière asynchrone puis se déconnecter ?

C'est en fait un scénario assez courant. Vous ne pouvez rien faire en fonction du client car le client peut s'en aller et se déconnecter et vous perdrez le travail réalisé jusqu'à présent. La solution consiste à utiliser Activation du courtier de services :vous créez un service dans la base de données et attachez une procédure activée. Dans votre application (ou page ASP) vous envoyez un message au service et intégrez les paramètres nécessaires à votre procédure. Une fois votre application validée, le message active la procédure de service. la procédure de service lit les paramètres du message et appelle votre procédure. puisque l'activation se produit sur un thread de serveur sans rapport avec votre connexion d'origine, c'est fiable. En fait, le serveur peut même s'arrêter et redémarrer pendant votre procédure est en cours d'exécution et le travail sera annulé puis repris, puisque le message d'activation déclenchera à nouveau la procédure de service après le redémarrage.

Mettre à jour

J'ai publié les détails de la procédure à suivre, y compris un exemple de code sur mon blog :Exécution de procédure asynchrone .