判斷指定資料庫存取權

-- 判斷具有指定資料庫存取權的相關資訊

USE [master]

GO

ALTER DATABASE [Test] SET   OFFLINE ; -- 設置離線

 

GO

DECLARE @Status BIGINT

SELECT @Status= status   FROM master. dbo. sysdatabases WHERE Name = 'Test'

SELECT   HAS_DBACCESS ( 'Test' ) AS [ 是否可訪問 ],

        DATABASEPROPERTY ( 'Test' , 'issingleuser' ) AS [ 是否單用戶 ],

        @Status & ltrim ( str ( convert ( int , 0x03e0), 11)) AS [ 數據狀態為時可用 ]

       

/*

是否可訪問     是否單用戶     數據狀態為時可用

0   0   512

*/

 

GO

ALTER DATABASE [Test] SET   ONLINE ; -- 設置在線

GO

 

DECLARE @Status BIGINT

SELECT @Status= status   FROM master. dbo. sysdatabases WHERE Name = 'Test'

SELECT   HAS_DBACCESS ( 'Test' ) AS [ 是否可訪問 ],

        DATABASEPROPERTY ( 'Test' , 'issingleuser' ) AS [ 是否單用戶 ],

        @Status & ltrim ( str ( convert ( int , 0x03e0), 11)) AS [ 數據狀態為時可用 ]

       

/*

是否可訪問     是否單用戶     數據狀態為時可用

1   0   0

*/

原文地址:https://www.cnblogs.com/Roy_88/p/5463075.html