Overblog Folge diesem Blog
Edit post Administration Create my blog
Blog von Olaf Helper

Template für „Benutzerdefinierte Berichte“ und Beispiel „Databases in Use“

2. Januar 2009 , Geschrieben von Olaf Helper Veröffentlicht in #Reporting

Wie schon erläutert, kann man sich für das SSMS (SQL Server Management Studio) benutzerdefinierte Bereichte erstellen, um sich Ergebnisse optisch aufbereiten zu lassen und nicht immer nur als tabellarischen Resultset zu bekommen.

Um nicht für jeden neuen Report die Parameter nebst Definition wieder erfassen zu müssen, habe ich mir ein Template fürs BIDS 2005 (Business Intelligence Developer Studio) erstellt, das es hier gibt. Man kopiert es einfach, benennt es um und bindet es in seine BIDS 2005 Solution ein; schon kann es losgehen. Nutzt man BIDS 2008, wird der Report konvertiert, vom Original eine Sicherungskopie erstellt.

Als erstes Beispiel, das man auch praktisch Verwenden kann, gibt es die Auswertung „Databases in Usage“. Es listet alle Datenbanken der Instanz mit der Anzahl der User + Prozessen, die die Datenbanken verwenden. Nicht verwendete Datenbanken werden gegraut angezeigt.

Der Report beruht auf der einfachen Abfrage:

 

 SELECT DB_NAME(DBS.dbid) AS DatabaseName, 
PRO.dbid,
COUNT(PRO.spid) AS CntSPID,
  COUNT(DISTINCT PRO.loginame) AS CntUser, 
COUNT(DISTINCT PRO.hostname) AS CntHost,
  SUM(PRO.cpu) AS SumCpu, 
SUM(PRO.physical_io) AS SumIO,
SUM(PRO.memusage) AS SumMem
 FROM master.sys.sysdatabases AS DBS 
  LEFT JOIN master.sys.sysprocesses AS PRO 
  ON DBS.dbid = PRO.dbid 
 GROUP BY DB_NAME(DBS.dbid), PRO.dbid 
 ORDER BY DB_NAME(DBS.dbid) 

Diesen Post teilen

Repost 0

Kommentiere diesen Post