[T-SQL] Déconnecter tous les utilisateurs

Là encore rien de neuf mais cela fait deux fois qu’on me le demande en deux jours donc j’imagine que ce n’est pas évident…

La manière la plus simple de déconnecter tous les utilisateurs d’une base SQL Server c’est de passer la base en mode SingleUser.
Ceci dit SQL n’est pas chien et lorsque l’on lui demande de procéder à ce genre d’éjection sauvage, il se comporte par défaut en gentleman et attend que toutes les transactions actives soient commitées.
Il faut donc le forcer à être un petit peu moins poli et ordonner le rollback de toutes les transactions actives.
ALTER DATABASE [Base] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
–Ici un traitement nécessitant d’être seul sur la base
–…
–Puis retour à la normale
ALTER DATABASE [Base] SET MULTI_USER
GO
Voilà rien de révolutionnaire mais si ça peut aider…

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s