Abfrageparameter
Ein Abfragetext kann Parameter enthalten. Dies soll an dem folgenden Beispiel verdeutlicht werden:
select * from DVDs
where Title = @param1
Dies ist die Abfrage an die MS SQL-Demo-Datenbank. In dieser Abfrage ist der Parameter mit dem Namen param1
definiert. Hier sollte folgendes beachtet werden: Die Methode zur Beschreibung von Parametern in einer Abfrage unterscheidet sich für verschiedene DBMS. Für MS und SQL wird ein Parameter durch ein @
Symbol gekennzeichnet. MS-Access-Parameter haben keine Namen und sind mit einem ?
-Symbol gekennzeichnet.
Sollte die SQL-Abfrage Parameter beinhalten, müssen diese bezeichnet werden. Dies geschieht während des dritten Schritts, des weiter oben betrachteten "Abfrage Assistenten". Zur Erstellung eines Parameters wird die Schaltfläche "Parameter hinzufügen" gedrückt. Es wird ein neuer Parameter erstellt:
Die folgenden Parametereigenschaft sollten im Fenster "Eigenschaften" festgelegt werden:
Eigenschaft | Beschreibung |
---|---|
Name | Parametername. Hier muss der gleiche Name, der auch im Abfragetext genutzt wurde, angezeigt werden. Einige DBMS (z.B. MS Access) unterstützen die benannten Parameter nicht. In diesem Beispiel sollte diese Eigenschaft nicht geändert werden. |
DataType | Datenart des Parameters |
DefaultValue | Wert der bei einem nicht bestimmten, oder nicht berechenbaren (z.B. beim Betrieb mit einer Abfrage im Designmodus des Berichts) Expression Eigenschaft genutzt wird. |
Expression | Ausdruck der den Parameterwert zurückgibt. Dieser Wert wird bei der Durchführung des Berichts bearbeitet. In dieser Eigenschaft kann jeder Ausdruck angezeigt werden (siehe Details im Kapitel "Ausdrücke"). |
Size | Datengröße des Parameters. Diese Eigenschaft sollte angezeigt sein, wenn der Parameter DataType eine String ist. |
Werden die Parametereigenschaften nicht ordnungsgemäß eingestellt, wird auf der letzten Seite des Assistenten eine Fehlermeldung angezeigt.