گاه برای انجام دادن کاری بر روی بانک اطلاعاتی مجبور هستيم آن را در وضعيت تک کاربره(Single User) قرار دهيم تا در هنگام اعمال تغييرات, ساير کاربران نتوانند باعث اختلال در کارها شوند
برای خارج نمودن بانک اطاعاتی از اين وضعيت و استفاده از آن بصورت Multi User ميتوان از دستور زير استفاده نمود:
exec sp_dboption 'database', 'single user', 'FALSE'
اما به دلايلی ممکن است بانک اطلاعاتی توسط کاربر ديگری قفل شده باشد و به ما اجازه اين عمل را ندهد, در اين صورت, از فرامين زير استفاده ميگردد:
Select d.name, d.dbid, spid, login_time, nt_domain, nt_username, loginame
from sysprocesses p
inner join sysdatabases d on p.dbid = d.dbid where d.name = 'database'
from sysprocesses p
inner join sysdatabases d on p.dbid = d.dbid where d.name = 'database'
که بجایÂ database بايستی نام بانک مورد نظر خود را قرار دهيد.
پس از اجرای اين فرمان, با ساتفاده از فرمان kill ساير کاربران متصل را قطع ميکنيم:
kill spid
که در آن بجای spid کد هايي که از اجرای قبل بذست آمده بود استفاده ميشود.
در انتها برای تغيير وضعيت, از اين دستور استفاده ميشود:
exec sp_dboption 'database', 'single user', 'FALSE'