Datenschutzhinweis

 

Beim Laden dieses Inhalts werden Nutzungsinformationen an Vimeo übertragen und dort ggf. verarbeitet.

 

             

Workflow-Aktion: Datenbank-Statement

Geändert am Mo, 27 Mai um 4:29 NACHMITTAGS

Aktionen vom Typ Datenbank-Statement 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.

Inhalt


Nutzeroberfläche für Aktionen vom Typ Datenbank-Statement.

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.


Zugriff auf wiederholende Elemente

Werden im Designer wiederholende Elemente eingefügt, dann würde bei Verwendung des normalen Formularplatzhalters als Übergabeparameter alle Werte kommasepariert zurückgeliefert werden, wenn mehr als eine Wiederholung exisitert. Die Zugriff muss hier daher indexiert erfolgen, z.B. [%tfName_0%] für ersten Eintrag, [%tfName_1%] für zweiten Eintrag, usw. Eine detailierte Beschreibung zur Handhabung der Formularplatzhalter bei Wiederholungen finden Sie hier.

Es sind dann auch bedingt mehrere SQL-Aktionen aufzuführen. In der Bedingung könnte z.B. ein Mussfeld innerhalb des Wiederholungsblocks geprüft werden, ob Inhalt vorhanden ist.

Aktionsplatzhalter

Aktionen vom Typ Datenbank-Statement 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.
[%$<Aktionsname>.RESULT.rows.length()%]
Wie bei allen Listen kann auf die Anzahl der Zeilen über length() zugegriffen werden.

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%]')

War dieser Artikel hilfreich?

Das ist großartig!

Vielen Dank für das Feedback

Leider konnten wir nicht helfen

Vielen Dank für das Feedback

Wie können wir diesen Artikel verbessern?

Wählen Sie wenigstens einen der Gründe aus
CAPTCHA-Verifikation ist erforderlich.

Feedback gesendet

Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren