Я хочу мати змогу запустити запит, щоб отримати важливу інформацію про стан бази даних. Тобто, я хочу, щоб запит мав змогу сказати, чи є база даних у хорошому стані.
Це запит, який я успадкував для цієї перевірки:
SELECT name AS [SuspectDB],
DATABASEPROPERTY(name, N'IsSuspect') AS [Suspect],
DATABASEPROPERTY(name, N'IsOffline') AS [Offline],
DATABASEPROPERTY(name, N'IsEmergencyMode') AS [Emergency],
has_dbaccess(name) AS [HasDBAccess]
FROM sysdatabases
WHERE (DATABASEPROPERTY(name, N'IsSuspect') = 1)
OR (DATABASEPROPERTY(name, N'IsOffline') = 1)
OR (DATABASEPROPERTY(name, N'IsEmergencyMode') = 1)
OR (has_dbaccess(name) = 0)
Якщо цей запит повертає якісь результати, робиться припущення про те, що база даних знаходиться в підозрілому або потенційно поганому стані.
Чи є кращий спосіб зробити це?