Datenbank-Abfrage
Aktionen vom Typ Datenbank-Abfrage ermöglicht es, eine SQL-Abfrage auszuführen. Dazu muss vorher eine Verbindung in Datenbankverwaltung angelegt worden sein. Innerhalb der Abfrage können Platzhalter verwendet werden, um etwa Formulardaten in die Abfrage einzufügen. Dabei werden sogenannte Prepared-Statements erzeugt, sodass SQL-Injection nicht möglich ist.
Parameter
Details der Datenbank-Abfrage
- Konfigurierte DB-Abfrage nutzen?
- Wenn diese Option ausgewählt wird, kann eine im Backend vorkonfigurierte DB-Abfrage ausgewählt werden. Zusätzlichen werden Details zur Abfrage angezeigt.
- Verbindung
- Datenbank-Verbindung, welche in der Verwaltung vor konfiguriert wurde.
- SQL Anweisung
- Textfeld für die SQL Anweisung.
Aktionsplatzhalter
Aktionen vom Typ Datenbank-Abfrage stellen Aktionsplatzhalter bereit, welche in darauf folgenden Aktionen verwendet werden können.
Standardplatzhalter
- [%$<Aktionsname>.SUCCESS%]
- Rückgabe ob Aktion erfolgreich ausgeführt wurde. Liefert Boolean (true/false) zurück.
- [%$<Aktionsname>.RESULT%]
- Rückgabe aller von der Aktion bereitgestellten Ergebnisse in strukturierter Form.
- [%$<Aktionsname>.ERROR_CODE%]
- Der geworfene Fehler-Code im Fehlerfall der Aktion. Leer wenn kein Fehler aufgetreten ist.
- [%$<Aktionsname>.ERROR_MESSAGE%]
- Die geworfene Fehler-Nachricht im Fehlerfall der Aktion. Leer wenn kein Fehler aufgetreten ist.
Aktionsspezifische Platzhalter
- [%$<Aktionsname>.RESULT.rows[i]['key']%]
- Ein JSON-Array mit den Ergebnissen des SQL-Statements. Jeder Eintrag im JSON-Array ist ein JSON-Objekt, wobei der Schlüssel dem Namen der Datenbankspalte entspricht. Der Index i beginnt mit 0.
- [%$<Aktionsname>.RESULT.updateCount%]
- Für ein Update-Statement: die Anzahl der betroffenen Zeilen in der Datenbank. Ansonsten ist der Wert immer 0.
Hinweis
Das eingegebene Statement wird als Prepared-Statement ausgeführt, so dass keine sogenannte SQL-Injection moglich ist. Verwenden Sie daher auch keine Hochkommas.
Richtig
INSERT INTO test_tabelle (vorname, nachname) values ([%tfVorname%], [%tfName%])
Falsch
INSERT INTO test_tabelle (vorname, nachname) values ('[%tfVorname%]', '[%tfName%]')