Benutzeroberfläche des Abfrage-Designers für SQL Server
Neu: 14. April 2006
Reporting Services bietet einen grafischen Abfrage-Designer und einen standardmäßigen Abfrage-Designer zum Erstellen von Abfragen, um Daten aus einer relationalen Datenbank für ein Berichtsdataset im Berichts-Designer abzurufen. Der grafische Abfrage-Designer stellt visuelle Darstellungen der zugrunde liegenden Daten aus der Datenquelle bereit. Verwenden Sie den grafischen Abfrage-Designer zum Durchsuchen und interaktiven Erstellen einer Abfrage sowie zum Anzeigen der Ergebnisse. Der standardmäßige Abfrage-Designer bietet die Möglichkeit, Abfragetext direkt einzugeben. Verwenden Sie den standardmäßigen Abfrage-Designer zum Erstellen, Einfügen oder Bearbeiten von Abfragetexten, Ausführen des Befehls und Anzeigen der Ergebnisse.
Zum Wechseln zwischen dem standardmäßigen Abfrage-Designer und dem grafischen Abfrage-Designer klicken Sie auf die Umschaltfläche Standardmäßiger Abfrage-Designer () auf der Symbolleiste. Einige komplexe Abfragen und ausdrucksbasierte Abfragen können nicht im grafischen Abfrage-Designer dargestellt werden.
Weitere Informationen zum Arbeiten mit einer SQL Server-Datenquelle finden Sie unter Definieren von Berichtsdatasets für eine relationale SQL Server-Datenbank und Vorgehensweisen für Berichtsdaten.
Befehlstyp
Es gibt drei verschiedene Typen von Abfragebefehlen: Text, StoredProcedure und TableDirect. Bevor Sie die Abfrage erstellen, müssen Sie in der Dropdownliste Befehlstyp einen Befehlstyp auswählen. Der Standardbefehlstyp ist Text. Der Text-Befehlstyp unterstützt standardmäßigen Transact-SQL-Abfragetext für relationale Datenquellen, einschließlich der Datenverarbeitungserweiterungen für Microsoft SQL Server und Oracle. Wählen Sie StoredProcedure aus, um eine gespeicherte Prozedur für Ihre Abfrage zu verwenden. Wählen Sie TableDirect aus, um das Äquivalent eines SELECT *-Befehls zum Abrufen aller Felder in einer Tabelle auszuführen.
Hinweis: |
---|
Nicht alle Typen werden von allen Datenverarbeitungserweiterungen unterstützt. Der zugrunde liegende Datenprovider muss einen Befehlstyp unterstützen, damit alle Features verfügbar sind. Die Microsoft SQL Server-Datenverarbeitungserweiterungen unterstützen nur Text und StoredProcedure. Die OLE DB-Datenverarbeitungserweiterung mit dem Microsoft OLE DB-Anbieter für SQL Server unterstützt Text, StoredProcedure und TableDirect. |
Klicken Sie zum Wechseln des Befehlstyps auf der Symbolleiste auf die Schaltfläche Ausgewähltes Dataset bearbeiten (), um das Dialogfeld Dataset zu öffnen. Wählen Sie in der Dropdownliste Befehlstyp den gewünschten Typ aus, und klicken Sie dann auf OK. Der Abfrage-Designer wird für den ausgewählten Typ geöffnet.
Grafischer Abfrage-Designer
Der grafische Abfrage-Designer hat vier Bereiche: Diagramm, Raster, SQL und Ergebnis. Sie können mit visuellen Darstellungen von Datenbanktabellen und einem Metadatenraster arbeiten, das mit den von Ihnen ausgewählten Spalten aufgefüllt wird. Sie können Spalten, Aliasnamen, Sortierungswerte und Filterwerte für eine Transact-SQL-Abfrage angeben. Sie können den anhand Ihrer Auswahl generierten Abfragetext anzeigen, die Abfrage ausführen und das Resultset anzeigen. Für den StoredProcedure-Befehlstyp können Sie eine gespeicherte Prozedur aus einer Dropdownliste mit aus der Datenquelle abgerufenen gespeicherten Prozeduren auswählen, diese ausführen und die Ergebnisse im Bereich Ergebnis anzeigen. Entsprechend können Sie für den TableDirect-Befehlstyp eine Tabelle aus einer Dropdownliste mit aus der Datenquelle abgerufenen Tabellen auswählen, eine Standardabfrage ausführen, die alle Spalten der Tabelle auswählt, und die Ergebnisse im Bereich Ergebnis anzeigen.
Text-Befehlstyp
Für den Text-Befehlstyp stellt der grafische Abfrage-Designer vier Bereiche dar. Die folgende Abbildung bezeichnet die einzelnen Bereiche.
Die folgende Tabelle beschreibt die Funktion jedes Bereichs.
Bereich | Funktion |
---|---|
Diagramm |
Zeigt grafische Darstellungen der Tabellen in der Abfrage an. In diesem Bereich können Sie Felder auswählen und Beziehungen zwischen Tabellen definieren. |
Raster |
Zeigt eine Liste der von der Abfrage zurückgegebenen Felder an. In diesem Bereich definieren Sie Aliase, die Sortierung, Filterung, Gruppierung und die Parameter. |
SQL |
Zeigt die Transact-SQL-Abfrage an, die im Diagramm- und im Rasterbereich dargestellt ist. In diesem Bereich schreiben oder aktualisieren Sie eine Abfrage mit Transact-SQL. |
Ergebnis |
Zeigt das Ergebnis der Abfrage an. Klicken Sie zum Ausführen der Abfrage mit der rechten Maustaste in einen beliebigen Bereich, und klicken Sie dann auf Ausführen, oder klicken Sie auf der Symbolleiste auf Ausführen. |
Wenn Sie die Informationen in einem der ersten drei Bereiche ändern, werden diese Änderungen in den anderen Bereichen angezeigt. Beispielsweise wird eine von Ihnen im Diagrammbereich hinzugefügte Tabelle automatisch auch zur Transact-SQL-Abfrage im SQL-Bereich hinzugefügt. Ein Feld, das zur Abfrage im SQL-Bereich hinzugefügt wird, wird automatisch zur Liste im Rasterbereich hinzugefügt. Die Tabelle im Diagrammbereich wird entsprechend aktualisiert.
Zum Ausführen von Aktionen in einem bestimmten Bereich, z. B. Hinzufügen einer Tabelle zum Diagrammbereich, klicken Sie mit der rechten Maustaste in den Bereich, und klicken Sie dann auf das Menüelement.
Wichtig: |
---|
Wenn Sie eine Abfrage mithilfe des Abfrage-Designers erstellen oder aktualisieren, müssen Sie die Änderungen in dem Bericht speichern. Klicken Sie dazu auf die Schaltfläche Felder aktualisieren (), oder wechseln Sie zur Layoutansicht, oder klicken Sie im Menü Datei auf Alle speichern. |
Symbolleiste des grafischen Abfrage-Designers
Die Symbolleiste des grafischen Abfrage-Designers stellt Schaltflächen bereit, die Ihnen helfen, Transact-SQL-Abfragen mithilfe der grafischen Benutzeroberfläche zu entwerfen. Die folgende Abbildung zeigt die Symbolleiste mit einer Tabelle, die jede Schaltfläche und deren Funktion aufführt.
Schaltfläche | Beschreibung |
---|---|
Bearbeiten des ausgewählten Datasets. |
|
Löschen des ausgewählten Datasets. |
|
Aktualisieren der Datasetfelder aus der Datenquelle. Wenn das Fenster Datasets sichtbar ist, werden alle von Ihnen vorgenommenen Feldänderungen in der Liste der Felder für das ausgewählte Dataset aktualisiert. Klicken Sie zum Anzeigen des Datasetfensters im Menü Ansicht auf Datasets. |
|
Wechseln zwischen dem standardmäßigen Abfrage-Designer und dem grafischen Abfrage-Designer. |
|
Ein- und Ausblenden des Diagrammbereichs. |
|
Ein- und Ausblenden des Rasterbereichs. |
|
Ein- und Ausblenden des SQL-Bereichs. |
|
Ein- und Ausblenden des Ergebnisbereichs. |
|
Ausführen der Abfrage. |
|
Überprüfen, ob die Syntax des Abfragetextes richtig ist. |
|
Festlegen der Sortierreihenfolge auf Aufsteigend sortieren für die ausgewählte Spalte im Diagrammbereich. |
|
Festlegen der Sortierreihenfolge auf Absteigend sortieren für die ausgewählte Spalte im Diagrammbereich. |
|
Entfernen des Filters für die ausgewählte Spalte im Diagrammbereich, die als einen Filter aufweisend gekennzeichnet ist (). |
|
Ein- und Ausblenden der Gruppieren nach-Spalte im Rasterbereich. Wenn die Umschaltfläche Gruppieren nach aktiviert ist, wird eine zusätzliche Spalte namens Gruppieren nach im Rasterbereich angezeigt, und für jeden Wert der ausgewählten Spalten in der Abfrage wird standardmäßig Gruppieren nach verwendet, sodass die ausgewählte Spalte in eine GROUP BY-Klausel im SQL-Text aufgenommen wird. Verwenden Sie die Schaltfläche Gruppieren nach, um automatisch eine GROUP BY-Klausel hinzuzufügen, die alle Spalten in der SELECT-Klausel enthält. Schließen Sie jede Nicht-Aggregatspalte in die GROUP BY-Klausel ein, wenn die SELECT-Klausel Aggregatfunktionsaufrufe (beispielsweise SUM(ColumnName)) enthält und im Resultset angezeigt werden soll. Für die Anzeige im Ergebnisbereich muss für jede Spalte in der Abfrage eine Aggregatfunktion für die Verwendung beim Berechnen des im Ergebnisbereich anzuzeigenden Wertes definiert sein, oder die Spalte in der Abfrage muss in der GROUP BY-Klausel der SQL-Abfrage angegeben sein. |
|
Hinzufügen einer neuen Tabelle aus der Datenquelle zum Diagrammbereich. Hinweis Wenn Sie eine neue Tabelle hinzufügen, versucht der Abfrage-Designer, Fremdschlüsselbeziehungen aus der Datenquelle zuzuordnen. Bestätigen Sie nach dem Hinzufügen einer Tabelle, dass die durch Verknüpfungen zwischen den Tabellen dargestellten Fremdschlüsselbeziehungen richtig sind. |
Beispiel
Die folgende Abfrage gibt die Liste der Nachnamen aus der Contact-Tabelle der AdventureWorks-Datenbank zurück:
SELECT LastName FROM Person.Contact
Sie können auch gespeicherte Prozeduren aus dem SQL-Bereich ausführen. Die folgende Abfrage führt die gespeicherte Prozedur uspGetEmployeeManagers in der AdventureWorks-Datenbank aus:
EXEC uspGetEmployeeManagers '1'
StoredProcedure-Befehlstyp
Für den StoredProcedure-Befehlstyp zeigt der grafische Abfrage-Designer eine Dropdownliste der verfügbaren gespeicherten Prozeduren aus der Datenquelle und einen Ergebnisbereich an. Die folgende Abbildung bezeichnet die einzelnen Bereiche.
Die folgende Tabelle beschreibt die Funktion jedes Bereichs.
Bereich | Funktion |
---|---|
Dropdownliste der gespeicherten Prozeduren |
Listet alle verfügbaren gespeicherten Prozeduren aus der Datenquelle auf. Wählen Sie eine gespeicherte Prozedur aus der Liste aus, um sie zu aktivieren. |
Ergebnis |
Zeigt das Ergebnis der Ausführung der gespeicherten Prozedur an. Klicken Sie zum Ausführen der ausgewählten gespeicherten Prozedur auf die Schaltfläche Ausführen auf der Symbolleiste. |
Schaltflächen der Symbolleiste für den StoredProcedure-Befehlstyp
Die Symbolleiste des grafischen Abfrage-Designers stellt eine Dropdownliste mit gespeicherten Prozeduren der Datenquelle bereit. Die folgende Abbildung zeigt jede Schaltfläche und ihre Funktion an.
Schaltfläche | Beschreibung |
---|---|
Bearbeiten des ausgewählten Datasets. |
|
Löschen des ausgewählten Datasets. |
|
Aktualisieren der Datasetfelder aus der Datenquelle. |
|
Wechseln zwischen dem standardmäßigen Abfrage-Designer und dem grafischen Abfrage-Designer, wobei die Ansicht des Abfragetextes oder der gespeicherten Prozedur beibehalten wird. |
|
Ausführen der ausgewählten gespeicherten Prozedur. |
|
Dropdownliste der gespeicherten Prozeduren |
Klicken Sie auf den Pfeil nach unten, um eine Liste verfügbarer gespeicherter Prozeduren aus der Datenquelle anzuzeigen. Klicken Sie auf eine gespeicherte Prozedur aus der Liste, um sie auszuwählen. |
Beispiel
Die folgende gespeicherte Prozedur ruft eine Befehlskettenliste von Vorgesetzten aus der AdventureWorks-Datenbank auf. Diese gespeicherte Prozedur akzeptiert EmployeeID als Parameter. Sie können jede kleine ganze Zahl eingeben.
uspGetEmployeeManagers '1'
TableDirect-Befehlstyp
Für den TableDirect-Befehlstyp zeigt der grafische Abfrage-Designer eine Dropdownliste der verfügbaren Tabellen aus der Datenquelle und einen Ergebnisbereich an. Wenn Sie eine Tabelle auswählen und auf die Schaltfläche Ausführen klicken, werden alle Spalten für diese Tabelle zurückgegeben.
Hinweis: |
---|
Nicht alle Datenprovider unterstützen diesen Typ. Ein Datenprovider, der den TableDirect-Befehlstyp unterstützt, ist OLEDB mit dem Microsoft OLE DB-Anbieter für SQL Server. |
Die folgende Abbildung bezeichnet die einzelnen Bereiche.
Die folgende Tabelle beschreibt die Funktion jedes Bereichs.
Bereich | Funktion |
---|---|
Dropdownliste der Tabellen |
Listet alle verfügbaren Tabellen aus der Datenquelle auf. Wählen Sie eine Tabelle aus der Liste aus, um sie zu aktivieren. |
Ergebnis |
Zeigt alle Spalten aus der ausgewählten Tabelle an. Klicken Sie zum Ausführen der Tabellenabfrage auf die Schaltfläche Ausführen auf der Symbolleiste. |
Schaltflächen der Symbolleiste für den TableDirect-Befehlstyp
Die Symbolleiste des grafischen Abfrage-Designers stellt eine Dropdownliste mit Tabellen der Datenquelle bereit. Die folgende Abbildung zeigt jede Schaltfläche und ihre Funktion an.
Schaltfläche | Beschreibung |
---|---|
Bearbeiten des ausgewählten Datasets. |
|
Löschen des ausgewählten Datasets. |
|
Aktualisieren der Datasetfelder aus der Datenquelle. |
|
Wechseln zwischen dem standardmäßigen Abfrage-Designer und dem grafischen Abfrage-Designer, wobei die Ansicht des Abfragetextes oder der gespeicherten Prozedur beibehalten wird. |
|
Auswählen aller Spalten aus der ausgewählten Tabelle. |
|
Dropdownliste der Tabellen |
Klicken Sie auf den Pfeil nach unten, um eine Liste verfügbarer Tabellen aus der Datenquelle anzuzeigen. Klicken Sie auf eine Tabelle aus der Liste, um sie auszuwählen. |
Standardmäßiger Abfrage-Designer
Verwenden Sie den standardmäßigen Abfrage-Designer für komplexe Abfragen, zum Einfügen von Abfragen aus anderen Tools oder für ausdrucksbasierte Abfragen. Der standardmäßige Abfrage-Designer unterstützt dieselben drei Befehlstypen wie der grafische Abfrage-Designer: Text, StoredProcedure und TableDirect. Es gibt zwei Bereiche: den Abfragebereich, der den Abfragetext, die gespeicherte Prozedur oder den Tabellennamen anzeigt, und den Ergebnisbereich, der die Ergebnisse der Ausführung der Abfrage anzeigt. Text ist der Standardbefehlstyp.
Klicken Sie zum Wechseln zwischen den Befehlstypen auf der Symbolleiste auf die Dropdownliste Befehlstyp, und wählen Sie einen Typ aus.
Symbolleiste des standardmäßigen Abfrage-Designers
Der standardmäßige Abfrage-Designer stellt eine einzige Symbolleiste für alle Befehlstypen bereit. Die folgende Abbildung zeigt die Symbolleiste und eine Tabelle, die jede Schaltfläche und deren Funktion aufführt.
Schaltfläche
Beschreibung
Bearbeiten des ausgewählten Datasets.
Löschen des ausgewählten Datasets.
Aktualisieren der Datasetfelder aus der Datenquelle.
Ausführen des Abfragetextes oder der gespeicherten Prozedur und Anzeigen des Resultsets im Ergebnisbereich.
Befehlstyp
Auswählen von Text, StoredProcedure oder TableDirect. Wenn eine gespeicherte Prozedur Parameter aufweist, wird das Dialogfeld Abfrageparameter definieren angezeigt, wenn Sie auf der Symbolleiste auf Ausführen klicken. Sie können nach Bedarf Werte eingeben.
Hinweis:
Wenn eine gespeicherte Prozedur mehr als ein Resultset zurückgibt, wird das erste Resultset verwendet, um das Dataset aufzufüllen.
Text-Befehlstyp
Wenn Sie ein SQL Server-Dataset erstellen, wird vom Berichts-Designer standardmäßig der grafische Abfrage-Designer angezeigt. Klicken Sie zum Wechseln zum standardmäßigen Abfrage-Designer auf die Umschaltfläche für den standardmäßigen Abfrage-Designer () auf der Symbolleiste. Der standardmäßige Abfrage-Designer hat zwei Bereiche: den Abfragebereich und den Ergebnisbereich. Die folgende Abbildung bezeichnet die einzelnen Bereiche.
Die folgende Tabelle beschreibt die Funktion jedes Bereichs.
Bereich | Funktion |
---|---|
Abfrage |
Zeigt den Transact-SQL-Abfragetext an. In diesem Bereich schreiben oder bearbeiten Sie eine Transact-SQL-Abfrage. |
Ergebnis |
Zeigt das Ergebnis der Abfrage an. Klicken Sie zum Ausführen der Abfrage mit der rechten Maustaste in einen beliebigen Bereich, und klicken Sie auf Ausführen, oder klicken Sie auf der Symbolleiste auf Ausführen. |
Beispiel
Die folgende Abfrage gibt die Liste der Nachnamen aus der Contact-Tabelle der AdventureWorks-Datenbank zurück:
SELECT LastName FROM Person.Contact
Die folgende Abfrage ruft die gespeicherte Prozedur uspgetEmployeeManagers von AdventureWorks auf und gibt die Befehlskette für den Mitarbeiter mit der ID 1 zurück.
EXEC uspgetEmployeeManagers '1'
Wenn Sie auf der Symbolleiste auf Ausführen klicken, wird der Befehl im Abfragebereich ausgeführt, und die Ergebnisse werden im Ergebnisbereich ****angezeigt.
StoredProcedure-Befehlstyp
Wenn Sie unter Befehlstyp die Option StoredProcedure auswählen, stellt der standardmäßige Abfrage-Designer zwei Bereiche dar: den Abfragebereich und den Ergebnisbereich. Wenn Sie eine gespeicherte Prozedur aus der Dropdownliste auswählen, wird diese in den Abfragebereich eingefügt. Hier können Sie Parameterwerte eingeben.
Beispiel
Die folgende Abfrage ruft die gespeicherte Prozedur uspgetEmployeeManagers von AdventureWorks auf und gibt die Befehlskette für den Mitarbeiter mit der ID 1 zurück.
uspgetEmployeeManagers '1'
TableDirect-Befehlstyp
Wenn Sie unter Befehlstyp die Option TableDirect auswählen, stellt der standardmäßige Abfrage-Designer zwei Bereiche dar: den Abfragebereich und den Ergebnisbereich. Wenn Sie eine Tabelle auswählen und auf die Schaltfläche Ausführen klicken, werden alle Spalten für diese Tabelle zurückgegeben.
Beispiel
Die folgende Abfrage gibt ein Resultset für alle Kunden in der AdventureWorks-Datenbank zurück. Wenn Sie den Namen der Customers-Tabelle aus der Dropdownliste auswählen, entspricht dies dem Erstellen der Transact-SQL-Abfrage SELECT * FROM Customers
. Der folgende Text wird in den Abfragebereich eingefügt.
Customers
Siehe auch
Andere Ressourcen
Abfrageentwurfstools in Reporting Services
Definieren von Berichtsdatasets
Definieren von Berichtsdatasets für eine relationale SQL Server-Datenbank
Definieren von Berichtsdatasets für andere Datenquellen
Installieren der Beispieldatenbanken und Beispiele für AdventureWorks