Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette rubrique décrit les restrictions associées au code s’exécutant dans le processus SQL Server par le biais de connexions contextuelles et régulières.
Restrictions sur les connexions contextuelles
Lorsque vous développez votre application, prenez en considération les restrictions suivantes qui s'appliquent aux connexions contextuelles :
Vous ne pouvez avoir qu'une seule connexion contextuelle ouverte à tout moment pour une connexion donnée. Si plusieurs instructions s'exécutent simultanément dans des connexions séparées, chacune d'elles peut obtenir sa propre connexion contextuelle. La restriction n’affecte pas les demandes simultanées provenant de différentes connexions ; elle affecte uniquement une demande donnée sur une connexion donnée.
Plusieurs jeux de résultats actifs (MARS) ne sont pas pris en charge dans une connexion de contexte.
La
SqlBulkCopyclasse ne fonctionne pas dans une connexion de contexte.La mise à jour par lot dans une connexion de contexte n’est pas prise en charge
SqlNotificationRequestne peut pas être utilisé avec des commandes qui s’exécutent sur une connexion de contexte.L’annulation de commandes en cours d’exécution sur la connexion de contexte n’est pas prise en charge. La méthode
SqlCommand.Cancelignore silencieusement la requête.Aucun autre mot clé de chaîne de connexion ne peut être utilisé lorsque vous utilisez « context connection=true ».
La
SqlConnection.DataSourcepropriété retourne null si la chaîne de connexion de l’objetSqlConnectionest « context connection=true », au lieu du nom de l’instance de SQL Server.La définition de la propriété
SqlCommand.CommandTimeoutn’a aucun effet lorsque la commande est exécutée sur une connexion de contexte.
Restrictions sur les connexions régulières
Lorsque vous développez votre application, prenez en considération les restrictions suivantes qui s'appliquent aux connexions normales :
L’exécution de commandes asynchrones sur des serveurs internes n’est pas prise en charge. L’inclusion de « async=true » dans la chaîne de connexion d’une commande, puis l’exécution de la commande entraîne
System.NotSupportedExceptionla levée. Ce message s’affiche : « Le traitement asynchrone n’est pas pris en charge lors de l’exécution dans le processus SQL Server ».SqlDependencyl’objet n’est pas pris en charge.