database\QueryValue - edoc automate
Mit der QueryValue-Aktion können Sie eine Abfrage auf einer Datenquelle ausführen. Das Ergebnis wird als einzelner Wert zurückgegeben.
Sie können Platzhalter in der Abfrage verwenden, die zur Laufzeit durch einen statischen Wert oder die Rückgabe einer Aktion ersetzt werden.
Syntax: :<param-name>
Beispiel: SELECT * FROM table WHERE col = :value
Optionen für Parameter
Mit zusätzlichen Optionen zu den Parametern können Sie das Verhalten der Parameterersetzung beeinflussen. Die Optionen können Sie mit eckigen Klammern nach dem Parameternamen einfügen. Beispiel: :<paramname>[<optionen>]
Wenn Sie mehrere Optionen verwenden möchten, können Sie diese mit einem Komma trennen.
Standardmäßig werden alle Parameter bei Bedarf automatisch mit umschließenden Anführungszeichen ersetzt. Zahlen und null werden ohne Anführungszeichen eingefügt. Mit den Optionen QUOTES und NO_QUOTES können Sie das Hinzufügen von Anführungszeichen um die Parameterwerte steuern.
QUOTES Der Parameterwert, außer null, wird mit Anführungszeichen eingefügt.
NO_QUOTES Der Parameterwert wird ohne umschließende Anführungszeichen eingefügt. Bitte Sicherheitshinweis beachten!
Folgende Optionen stehen außerdem zur Verfügung:
DEFAULT Gibt einen Wert an, der verwendet wird, wenn der Parameterwert null ist.
ISEMPTY Gibt einen Wert an, der verwendet wird, wenn der Parameterwert leer ist.
ISSTRING Gibt einen Wert an, der verwendet wird, wenn der Parameterwert eine Zeichenfolge (String) ist.
ISNUMERIC Gibt einen Wert an, der verwendet wird, wenn der Parameterwert eine Zahl ist.
Beispiel: :param1[QUOTES,ISEMPTY:Default value]
Aus Sicherheitsgründen sollte die Option NO_QUOTES vermieden werden, insbesondere wenn direkte Benutzereingaben an die Datenbank übertragen werden sollen.
Das Verwenden dieser Option kann zu potenziellen SQL-Injektionen (Angriff durch Einschleusen von SQL-Befehlen) führen.
Wenn Sie die Option dennoch nutzen, achten Sie unbedingt darauf, dass die Parameterwerte durch die App validiert und ggf. maskiert werden, um mögliche Sicherheitslücken in Ihrer App zu vermeiden.
Parameter
Typ | Name | Beschreibung |
---|---|---|
DATASOURCE | datasource | Gibt die zu verwendende Datenquelle an. |
EDITOR | query | Definiert die Abfrage der Datenbank, z.B. in SQL. |
KEYVALUELIST | params | Gibt eine Liste mit Parametern an, die in der Abfrage ersetzt werden sollen. |
Rückgabe
Typ | Beschreibung |
---|---|
SINGLEVALUE | Gibt das Ergebnis der Abfrage zurück. |