2017-10-10 15 views
0

Donc, j'ai ce proc qui fait un tas de supprimer et insère et puis sur la dernière étape, il commence un autre proc sur un serveur différent. Ma question est la suivante: Le premier proc attend-il que le second proc se termine? ou il commence juste l'autre proc et fait? Parce que je continue d'obtenir sql time dans mon code vb et je ne sais pas si cela pourrait être la raisonsi un proc a la dernière étape en commençant un autre proc le premier proc attend-il que l'autre finisse avant de finir?

+0

Je n'ai pas de réponse, mais cela pourrait être plus approprié pour dba.SE . Vous devriez également marquer la base de données pour laquelle il s'agit. Un proc stocké dans SQL Server se comporterait probablement différemment que dans Mongo, par exemple. – RToyo

+0

essayez d'augmenter le délai d'attente? est-ce un problème d'impasse? exécuter SQL trace, pouvez-vous voir jusqu'où ça se passe ?? Tbh, nous pourrions faire avec plus de détails comme peut-être une partie du code VB. –

+0

ne pas avoir accès à vb code atm. J'ai augmenté le temps de 30 secondes - 2 minutes, mais cela n'a pas aidé. – Markov

Répondre

0

La première procédure stockée attendra la seconde procédure stockée à exécuter. Cela vous permet d'utiliser les données renvoyées à partir de la deuxième procédure, de gérer les erreurs et de renvoyer une valeur appropriée.

Si vous ne voulez pas ce comportement, envelopper la seconde procédure stockée dans un emploi et de déclencher le travail:

EXEC msdb.dbo.sp_start_job @job_name='RunMyProc' 
+0

ohhg Je n'ai pas besoin d'être comme ça, Y at-il un moyen que je puisse faire le premier proc sans attendre le second? parce qu'ils ont tous les deux sur des serveurs différents et le premier proc verrouiller les tables. – Markov

+0

J'ai ajouté une technique pour cela. – Fenton

+0

Mais comment puis-je mettre des paramètres dans un travail pour le second proc? – Markov