Benutzeroberfläche des textbasierten Abfrage-Designers (Berichts-Generator 3.0)

Verwenden Sie den textbasierten Abfrage-Designer, um eine Abfrage mithilfe der Abfragesprache zu verwenden, die von der Datenquelle unterstützt wird, führen Sie die Abfrage aus, und zeigen Sie die Ergebnisse zur Entwurfszeit an. Sie können mehrere Transact-SQL-Anweisungen, Abfrage- oder Befehlssyntaxen für benutzerdefinierte Datenverarbeitungserweiterungen und Abfragen angeben, die als Ausdrücke angegeben sind. Da der textbasierte Abfrage-Designer die Abfrage nicht zuvor verarbeitet und eine beliebige Abfragesyntax aufnehmen kann, handelt es sich hierbei um das standardmäßige Abfrage-Designer-Tool für viele Datenquellentypen.

SicherheitshinweisSicherheitshinweis

Benutzer greifen auf Datenquellen zu, wenn sie Abfragen erstellen und ausführen. Sie sollten minimale Berechtigungen für die Datenquellen gewähren, z. B. nur Leseberechtigungen.

Der textbasierte Abfrage-Designer zeigt eine Symbolleiste und die folgenden zwei Bereiche an:

  • **Abfrage   **Zeigt den Abfragetext, den Tabellennamen oder den Namen der gespeicherten Prozedur an, je nach Abfragetyp. Nicht alle Abfragetypen können für alle Datenquellentypen verwendet werden. Beispiel: Tabellenname wird nur vom Datenquellentyp OLE DB unterstützt.

  • **Ergebnis   **Zeigt die Ergebnisse einer Ausführung der Abfrage zur Entwurfszeit an.

Textbasierte Abfrage-Designer-Symbolleiste

Der textbasierte Abfrage-Designer stellt eine einzige Symbolleiste für alle Befehlstypen bereit. In der folgenden Tabelle werden jede Schaltfläche auf der Symbolleiste und ihre Funktion aufgelistet.

Schaltfläche

Beschreibung

Als Text bearbeiten

Wechseln zwischen dem textbasierten Abfrage-Designer und dem grafischen Abfrage-Designer. Nicht alle Datenquellentypen unterstützen grafische Abfrage-Designer.

Importieren

Importiert eine vorhandene Abfrage aus einer Datei oder einem Bericht. Nur die Dateitypen SQL und RDL werden unterstützt.

Ausführen der Abfrage

Führen Sie die Abfrage aus, und zeigen Sie das Resultset im Ergebnisbereich an.

Befehlstyp

Wählen Sie Text, StoredProcedure oder TableDirect. Weist eine gespeicherte Prozedur Parameter auf, wird das Dialogfeld Abfrageparameter definieren angezeigt, wenn Sie auf der Symbolleiste auf Ausführen klicken. Sie können nach Bedarf Werte eingeben.

HinweisHinweis
Wenn eine gespeicherte Prozedur mehr als ein Resultset zurückgibt, wird nur das erste Resultset verwendet, um das Dataset zu füllen.

Befehlstyp "Text"

Wenn Sie ein SQL Server-Dataset erstellen, wird vom Berichts-Designer standardmäßig der relationale Abfrage-Designer geöffnet. Wenn Sie zum textbasierten Abfrage-Designer wechseln möchten, klicken Sie auf die Umschaltfläche Als Text bearbeiten auf der Symbolleiste. Der textbasierte Abfrage-Designer hat zwei Bereiche: den Abfragebereich und den Ergebnisbereich. Die folgende Abbildung bezeichnet die einzelnen Bereiche.

Generischer Abfrage-Designer für relationale Datenabfragen

In der folgenden Tabelle wird die Funktion für jeden Bereich beschrieben.

Bereich

Funktion

Abfrage

Zeigt den Transact-SQL-Abfragetext an. In diesem Bereich schreiben oder bearbeiten Sie eine Transact-SQL-Abfrage.

Ergebnis

Zeigt die Ergebnisse 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 AdventureWorks2008R22008ContactTypeDatenbanktabelle für das Person-Schema zurück

SELECT Name FROM Person.ContactType

Wenn Sie auf der Symbolleiste auf Ausführen klicken, wird der Befehl im Abfragebereich ausgeführt, und die Ergebnisse werden im Ergebnisbereich angezeigt. Das Resultset zeigt eine Liste mit 20 Typen von Kontakten an, wie Besitzer oder Handelsvertreter.

StoredProcedure-Befehlstyp

Wenn Sie unter Befehlstyp die Option StoredProcedure auswählen, stellt der textbasierte Abfrage-Designer zwei Bereiche dar: den Abfragebereich und den Ergebnisbereich. Geben Sie den Namen der gespeicherten Prozedur im Bereich Abfrage ein, und klicken Sie auf der Symbolleiste auf Ausführen. Wenn die gespeicherte Prozedur Parameter verwendet, wird das Dialogfeld Abfrageparameter definieren geöffnet. Geben Sie die Parameterwerte für die gespeicherte Prozedur ein. Für jeden Eingabeparameter einer gespeicherten Prozedur wird ein Berichtsparameter erstellt.

Die folgende Abbildung zeigt die Bereiche Abfrage und Ergebnis an, wenn Sie eine gespeicherte Prozedur ausführen. In diesem Fall sind die Eingabeparameter Konstanten.

Gespeicherte Prozedur im textbasierten Abfrage-Designer

In der folgenden Tabelle wird die Funktion für jeden Bereich beschrieben.

Bereich

Funktion

Abfrage

Zeigt den Namen der gespeicherten Prozedur und eventueller Eingabeparameter an.

Ergebnis

Zeigt die Ergebnisse 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 ruft die gespeicherte Prozedur AdventureWorks2008R22008uspGetWhereUsedProductID auf. Sie müssen einen Wert für den Produkt-ID-Parameter eingeben, wenn Sie die Abfrage ausführen.

uspGetWhereUsedProductID

Klicken Sie auf die Schaltfläche Ausführen (!). Wenn Sie nach den Abfrageparametern gefragt werden, geben Sie die Werte mithilfe der folgenden Tabelle ein.

@StartProductID

820

@CheckDate

20010115

Das Resultset zeigt eine Liste mit 13 Produkt-IDs, die die angegebene Komponentennummer verwendet haben, für das angegebene Datum an.

TableDirect-Befehlstyp

Wenn Sie unter Befehlstyp die Option TableDirect auswählen, stellt der textbasierte 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

Bei einem Datenquellentyp OLE DB gibt die folgende Datasetabfrage ein Resultset für alle Kontakttypen in der AdventureWorks2008R22008-Datenbank zurück.

Person.ContactType

Die Eingabe des Tabellennamens Person.ContactType entspricht der Erstellung der Transact-SQL-Anweisung SELECT * FROM Person.ContactType.