Je viens d'essayer de faire une simple modification de schéma à une table dans une base de données SQL Server (en utilisant l'outil de conception dans SMSS). Chaque fois que j'essayais de sauvegarder le changement, cela arrivait toujours. Je me demandais si cela était dû aux connexions existantes qui «bloquaient» la table. J'ai décidé de tuer les connexions en tant qu'expérience. J'ai interrogé master..sysprocesses pour obtenir les spids actuels pour cette base de données, et les ai détruits un par un jusqu'à ce que je puisse sauvegarder mon changement de schéma. (Pas très scientifique, mais je suis loin d'être un expert avec SQL Server). Effectivement, quand j'avais tué tous les spids (sauf celui qui était moi utilisant SMSS), j'étais capable d'enregistrer le changement de schéma.Quelle est la relation entre SqlConnections ouvertes dans l'application cliente et les processus dans SQL Server?
Je voudrais poser une question sur la relation entre ADO.NET SqlConnections et spids. Par exemple, si l'application client appelle Open() sur un objet SqlConnection, devrais-je voir un autre spid dans master..sysprocesses? Qu'en est-il si j'appelle Close() sur cette SqlConnection? Le spid devrait-il disparaître?
Je suis sûr que ce n'est pas aussi simple, étant donné que je comprends qu'il existe une notion de regroupement de connexions, mais quelqu'un peut-il nous éclairer sur la façon dont cette relation fonctionne?
Merci
David
Non, c'est exactement ce que je demandais. Je vous remercie! – David