मैं डेटाबेस की स्थिति के बारे में महत्वपूर्ण जानकारी प्राप्त करने के लिए एक क्वेरी चलाने में सक्षम होना चाहता हूं। यानी, मैं चाहता हूं कि डेटाबेस यह बता सके कि डेटाबेस एक अच्छी स्थिति में है या नहीं।
यह वह क्वेरी है जो मुझे इस चेक के लिए मिली है:
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)
यदि वह क्वेरी किसी भी परिणाम को लौटाती है, तो यह धारणा बनाई जा रही है कि डेटाबेस संदिग्ध या संभावित खराब स्थिति में है।
क्या ऐसा करने के लिए इससे अच्छा तरीका है?