Freigeben über


Benutzerdefinierte Berichte in Management Studio

Neu: 12. Dezember 2006

In SQL Server Management Studio wird von vielen Objekt-Explorer-Knoten ein Satz von Standardberichten angezeigt, die von Microsoft erstellt wurden. In diesen Berichten werden häufig angeforderte Serverinformationen zusammengefasst. Seit SQL Server 2005 Service Pack 2 können mit Management Studio in von Management Studio erstellte benutzerdefinierte Berichte von Administratoren ausgeführt werden.

Implementierung

Benutzerdefinierte Berichte werden als RDL-Dateien gespeichert und mithilfe der Berichtsdefinitionssprache (Report Definition Language, RDL) erstellt. In der Berichtsdefinitionssprache sind Informationen zum Datenabruf und Datenlayout für einen Bericht in einem XML-Format enthalten. Die Berichtsdefinitionssprache ist ein offenes Schema. Entwickler können die Berichtsdefinitionssprache mit zusätzlichen Attributen und Elementen erweitern. Jede gültige Transact-SQL-Anweisung in einem Bericht kann von Berichten ausgeführt wird.

Wurde für den Objekt-Explorer eine Verbindung mit einem Server hergestellt, können benutzerdefinierte Berichte im Kontext der aktuellen Objekt-Explorer-Auswahl ausgeführt werden, wenn von den Berichten auf Berichtsparameter dieses Knotens verwiesen wird. Dadurch wird ermöglicht, dass im Bericht der aktuelle Kontext (beispielsweise die aktuelle Datenbank) oder ein konsistenter Kontext (beispielsweise die Angabe einer designierten Datenbank als Teil der im benutzerdefinierten Bericht enthaltenen Transact-SQL-Anweisung) verwendet wird.

Ausführen eines benutzerdefinierten Berichts

Es gibt folgenden Möglichkeiten zum Ausführen eines benutzerdefinierten Berichts in Management Studio:

  • Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Knoten, zeigen Sie auf Berichte, und klicken Sie mit der linken Maustaste auf Benutzerdefinierte Berichte. Suchen Sie im Dialogfeld Datei öffnen einen Ordner mit RDL-Dateien, und öffnen Sie dann die entsprechende Berichtsdatei.
  • Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Knoten, zeigen Sie auf Berichte, zeigen Sie auf Benutzerdefinierte Berichte, und wählen Sie dann aus der Liste der zuletzt geöffneten Dateien einen benutzerdefinierten Bericht aus.

Einschränkungen

Berücksichtigen Sie bei der Verwendung benutzerdefinierter Berichte die im Folgenden aufgeführte Liste der Einschränkungen:

  • Zum Verhindern der unbeabsichtigten Ausführung von bösartigem Code kann Management Studio auch dann nicht für das automatische Ausführen eines Berichts konfiguriert werden, wenn das Dateisystem so konfiguriert ist, dass RDL-Dateien Management Studio zugeordnet werden. In Management Studio können Berichte weder programmgesteuert noch an der Eingabeaufforderung über Management Studio ausgeführt werden.
  • Benutzerdefinierte Berichte können in einem Kontext ausgeführt werden, in dem die erwarteten Werte nicht erstellt werden. Sie können beispielsweise einen Bericht über die Replikation im Kontext einer Datenbank ausführen, die nicht in der Replikation involviert ist, oder Sie können einen Bericht als ein Benutzer ausführen, der nicht über die Berechtigung für den Zugriff auf Informationen verfügt, die zum Generieren eines genauen Berichts erforderlich sind. Der Ersteller des benutzerdefinierten Berichts ist für die Gültigkeit der Berichtsstruktur und seines Kontexts verantwortlich.
  • Sie können der Liste der Standardberichte keinen benutzerdefinierten Bericht hinzufügen.
  • Der vom Bericht verarbeitete Code kann möglicherweise Auswirkungen auf die Serverleistung haben.
  • Unterberichte werden von benutzerdefinierten Berichten nicht unterstützt.
  • Der Befehlstext für die einzelnen Abfragen im Bericht darf nicht über einen Ausdruck definiert sein.
  • Mit jedem in einem Befehl (Abfrage) verwendeten Abfrageparameter kann nur auf einen einzelnen Berichtsparameter verwiesen werden. Ausdrucksoperatoren können nicht verwendet werden.
  • Für Berichtsbefehle (Abfragen) werden nur Befehle vom Typ Text und gespeicherte Prozedur unterstützt.
  • Das Berichtsframework bietet keine Parameter zum Erstellen von Escapezeichen für die Abfragen. Abfrageautoren müssen sicherstellen, dass ihre Abfragen frei von SQL Injection-Angriffen sind.

Verwalten von benutzerdefinierten Berichten

Für Benutzer, die über eine Vielzahl benutzerdefinierter Berichte verfügen, empfiehlt es sich, diese mithilfe der Dateisystemordner zu organisieren, die über entsprechende NTFS-Berechtigungen verfügen.

Berechtigungen

Benutzerdefinierte Berichte werden mithilfe der Berechtigungen des aktuellen Benutzers ausgeführt. Berechtigungen für den Dateisystemordner mit den Berichtsdateien müssen so festgelegt werden, dass der Zugriff eingeschränkt wird, um das Ändern der vom Bericht ausgeführten Abfragen durch einen böswilligen Benutzer zu verhindern.

Sowohl für den Benutzer als auch für das vom SQL Server-Dienst verwendete Konto ist Lesezugriff auf den Dateisystemordner mit den Berichtsdateien erforderlich.

Jeder gültige Microsoft .NET Framework-Befehl kann in einem Bericht eingebettet werden, der Befehl wird jedoch nicht ausgeführt.

Bb153684.Caution(de-de,SQL.90).gifVorsicht:
Jede gültige Transact-SQL-Anweisung kann in einem Bericht eingebettet und von einem Bericht aus ausgeführt werden. Durch das Ausführen eines Berichts unter einem Benutzerkonto mit hohen Privilegien wird die problemlose Ausführung jede dieser eingebetteten Anweisungen ermöglicht.

Beispielberichte

Beispielberichte, einschließlich der durch Microsoft erstellten Standardberichte, stehen zum Downloaden zur Verfügung. Diese Beispiele können mithilfe von Business Intelligence Development Studio geändert werden.

Siehe auch

Aufgaben

Vorgehensweise: Hinzufügen eines benutzerdefinierten Berichts zu Management Studio
Vorgehensweise: Aufheben der Unterdrückung von Warnungen für das Ausführen von benutzerdefinierten Berichten

Konzepte

Verwenden benutzerdefinierter Berichte mit Eigenschaften von Objekt-Explorer-Knoten

Hilfe und Informationen

Informationsquellen für SQL Server 2005