Alasan mengapa pendekatan yang disarankan Adam tidak akan berhasil adalah karena selama Anda mengulang koneksi aktif yang baru dapat dibuat, dan Anda akan melewatkannya. Anda dapat menggunakan pendekatan berikut yang tidak memiliki kelemahan ini:
-- set your current connection to use master otherwise you might get an error
use master
ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE
--do you stuff here
ALTER DATABASE YourDatabase SET MULTI_USER