Was ist die gespeicherte Prozedur?
Die gespeicherte Prozedur ist die SQL-Anweisung, die den Satz von verschiedenen Abfragen der Reihe nach zu erfüllen erlaubt. Die Verwendung von gespeicherter Prozedur ist sehr bequem beim Erstellen von Berichten und Dashboards, wenn dieselbe SQL-Abfrage immer in verschiedenen Datenquellen dupliziert wird. Dadurch, wenn, zum Beispiel, Sie die Abfragen bearbeiten wollen, sollen Sie die Abfragen in allen Berichten verändern kann. In diesem Fall, es ist mehr bequem, die gespeicherte Prozedur in Daten-Speicherung zu erstellen, und dann beim Erstellen von Datenquelle in Berichten diese Prozedur aufrufen. Flexible Verwendung ist der erste Vorteil der gespeicherten Prozeduren.Andere Vorteile der Verwendung von gespeicherter Prozedur
Die Verwendung von gespeicherter Prozedur erhöht die Leistungsfähigkeit im Vergleich zu gewöhnlicher Reihenfolge der SQL-Anweisung. Dies ist darauf zurückzuführen, dass der Code der Prozedur beim ersten Ausführen einmal auf dem Speicherung-Server kompiliert wird, und dann in kompilierter Form gespeichert wird. Außerdem, die Verwendung von gespeicherten Prozeduren erhöht wesentlich die Sicherheit, weil beim Aufrufen von der Prozedur nur der Aufruf für Ausführen von Prozedur sichtbar ist. Die Namen der Objekte der Tabellen und Datenbanken sind nicht verfügbar, und es ist mehr kompliziert, die SQL-Einschleusungen auszuführen.Die Verwendung von gespeicherter Prozedur
In diesem Kapitel erzählen wir, wie man die gespeicherte Prozedur in Berichten verwenden kann. Beim Erstellen von Berichten und Dashboards kann man den Text für Aufrufen gespeicherter Prozedur im Editor der Datenquelle, wenn Sie diese Datenquelle erstellen oder bearbeiten, eingeben. In diesem Fall, führt die Berichtsgenerator-Engine beim Erstellen vom Bericht die Abfrage mit gespeicherter Prozedur, die auf dem Server mit Datenspeicherung verarbeitet wird, durch. Dann wird die Antwort mit Daten, die an den Berichtsgenerator zurückgegeben werden, gebildet. Dann werden diese Daten durch Berichtsgenerator verarbeitet und im Viewer als Bericht oder Dashboard angezeigt werden.Initialisierung von gespeicherter Prozedur
Bei der Angabe vom Text für Aufrufen gespeicherter Prozedur in Datenquelle kann man den Text für Aufrufen als Abfrage (Query) oder Gespeicherte Prozedur (Stored Procedure) initialisieren. Die Initialisierung des Textes wird durch den Parameter Typ mit der Auswahl vom Wert als Abfrage oder Gespeicherte Prozedur festgelegt.Zum Beispiel, wenn Text für Aufrufen die Abfrage mit dem Ausführen-Befehl der gespeicherten Prozedur ist, muss man den ganzen Text als Abfrage initialisieren. Demzufolge, muss man vom Namen der gespeicherten Prozedur einen speziellen Befehl für Ausführen der Prozedur angeben. Mehr ausführlich können Sie über die Befehle des Ausführens gespeicherter Prozedur in der Spezifikation Ihrer Datenspeicherung erfahren. Erwähnen wir nur, dass die beliebtesten Befehle für Ausführen gespeicherter Prozedur abhängig vom Typen der Datenspeicherung
exec
, execute
und call
sind.Wenn beim Erstellen von Datenquelle das Ausführen nur gespeicherter Prozedur verwirklicht wird, muss man den Text für Aufrufen als Gespeicherte Prozedur initialisieren. Dafür braucht man im Text für Aufrufen nur den Namen gespeicherter Prozedur, die ausgeführt werden muss, eingeben.
Die Parameter der gespeicherten Prozedur
Beim Aufrufen gespeicherter Prozedur kann man die Parameter weitergeben. Die Verwendung von Parametern hängt von Initialisierung vom Aufrufen-Text als Abfrage oder Gespeicherte Prozedur ab. Wenn Sie den Text für Aufrufen als Abfrage initialisieren, werden die Parameter durch Komma getrennt eingegeben, mit dem speziellen Symbol@
als Präfix vor dem Parameter-Namen. Zum Beispiel, exec StoredProcedureName @param1, @param2, @param3
.Wenn Sie den Aufrufen-Text als Gespeicherte Prozedur initialisieren, kann man die Parameter in der Datenquelle erstellen, ohne ihr im Text einzugeben. Aber, hier muss man die Reihenfolge der Parameter in der Liste beachten. Die Parameter werden sequentiell angewendet werden, beachtend die Reihenfolge der Richtung von oben nach unten aus der Parameter-Liste.
Auch können Sie die Liste der erforderlichen Parameter der Prozedur automatisch erhalten. Dafür muss man im Aufrufen-Text den Namen der Prozedur angeben, den Parameter Typ in den Wert Gespeicherte Prozedur festlegen und den Befehl Spalten und Parameter abrufen (Retrieve Columns and Parameters) aus dem Menü Alle Spalten auslesen (Retrive Columns) auswählen. Bemerkung
In Einzelfällen unterstützt die Datenquelle nur die unbenannten Parameter (z.B., OleDB). Wenn Sie den Aufrufen-Text als Abfrage initialisieren, muss man die Reihenfolge der Parameter in der Liste beachten. So, die unbenannten Parameter werden in der Abfrage mit einem speziellen Symbol
?
ohne Namen bezeichnet.Nebenbei, wir haben vor Kurzem einen ausführlichen Artikel über die Parameter in der Abfrage veröffentlicht. Alles, was wir dort beschrieben haben, gehört auch zu den gespeicherten Prozeduren. Einschließlich, dass als Parameter gespeicherter Prozeduren die Variablen mit der Abfrage des Wertes vom Benutzer oder mit dem standardmäßigen Wert verwendet werden.
Wir haben die Verwendung von gespeicherter Prozeduren beim Erstellen von Berichten und Dashboards beschrieben. Jede Situation in diesen Fällen fordert zusätzliche Berücksichtigung, um richtige Entscheidung zu treffen. Darum sollen Sie selbstständig wählen, ob die gespeicherte Prozedur ausnutzen. Stimulsoft bietet verschiedene Fähigkeiten und Tools, um das Erstellen von Berichten und Dashboards mehr flexibel zu machen.
Auch haben wir detaillierte Videoanleitung für Verwendung von gespeicherter Prozedur beim Erstellen von Berichten.
Wenn Sie noch Fragen haben, kontaktieren Sie uns.