Serveur SQL (TSQL) - Est-il possible d'instructions EXEC en parallèle?

SQL Server 2008 R2

Voici un exemple simplifié:

EXECUTE sp_executesql N'PRINT ''1st '' + convert(varchar, getdate(), 126) WAITFOR DELAY ''000:00:10'''
EXECUTE sp_executesql N'PRINT ''2nd '' + convert(varchar, getdate(), 126)'

La première instruction d'impression de la date et de retard de 10 secondes avant de poursuivre.
La deuxième déclaration doit imprimer immédiatement.

La façon de T-SQL fonctionne, la 2e déclaration ne sera pas évalué jusqu'à ce que la première est terminée. Si je l'ai copier et de le coller dans une nouvelle fenêtre de requête, il va exécuter immédiatement.

Le problème est que j'ai d'autres choses complexes, avec des variables qui doivent être transmis aux deux procédures.

Ce que je suis en train de faire est:

  • Obtenir un record
  • De verrouillage pour une période de temps
  • lorsqu'il est verrouillé, exécuter certaines autres déclarations à l'encontre de cet enregistrement et la table elle-même

Peut-être il ya un moyen de créer dynamiquement un couple d'emplois?

De toute façon, je suis à la recherche d'un moyen simple de le faire sans avoir à les IMPRIMER manuellement des déclarations et des copier/coller à une autre session.

Est-il un moyen de EXEC sans attendre /en parallèle?

La dynamique de l'emploi de la technique peut bien fonctionner pour l'exécution de SQL de manière asynchrone.

OriginalL'auteur Outside the Box Developer | 2010-12-31