Wiki-Quellcode von Datenbank (SQL Statement)
Zeige letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
1 | {{figure image="db_statement_de.png"}} | ||
2 | Nutzeroberfläche für Aktionen vom Typ //Datenbank-Abfrage//. | ||
3 | {{/figure}} | ||
4 | |||
5 | 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. | ||
6 | |||
7 | == Parameter == | ||
8 | |||
9 | === Details der Datenbank-Abfrage === | ||
10 | |||
11 | ; Konfigurierte DB-Abfrage nutzen? | ||
12 | : Wenn diese Option ausgewählt wird, kann eine im Backend vorkonfigurierte DB-Abfrage ausgewählt werden. Zusätzlichen können Abfrageparameter hinzugefügt werden. | ||
13 | ; SQL Anweisung | ||
14 | : Textfeld für die SQL Anweisung. | ||
15 | |||
16 | == Aktionsplatzhalter == | ||
17 | |||
18 | Aktionen vom Typ //Datenbank-Abfrage// stellen [[Aktionsplatzhalter>>Formcycle.UserInterface.Variables||anchor="Aktionsplatzhalter"]] bereit, welche in darauf folgenden Aktionen verwendet werden können. | ||
19 | |||
20 | === Standardplatzhalter === | ||
21 | |||
22 | ; [%$<Aktionsname>.SUCCESS%] | ||
23 | : Rückgabe ob Aktion erfolgreich ausgeführt wurde. Liefert Boolean (true/false) zurück. | ||
24 | ; [%$<Aktionsname>.RESULT%] | ||
25 | : Rückgabe aller von der Aktion bereitgestellten Ergebnisse in strukturierter Form. | ||
26 | |||
27 | ; [%$<Aktionsname>.ERROR_CODE%] | ||
28 | : Der geworfene Fehler-Code im Fehlerfall der Aktion. Leer wenn kein Fehler aufgetreten ist. | ||
29 | ; [%$<Aktionsname>.ERROR_MESSAGE%] | ||
30 | : Die geworfene Fehler-Nachricht im Fehlerfall der Aktion. Leer wenn kein Fehler aufgetreten ist. | ||
31 | |||
32 | === Aktionsspezifische Platzhalter === | ||
33 | |||
34 | == Hinweis == | ||
35 | |||
36 | Das eingegebene Statement wird als //Prepared-Statement// ausgeführt, so dass keine sogenannte //SQL-Injection// moglich ist. Verwenden Sie daher auch keine Hochkommas. | ||
37 | |||
38 | (% style="color: rgb(56, 118, 29);" %)**Richtig** | ||
39 | |||
40 | {{code language="sql"}} | ||
41 | INSERT INTO test_tabelle (vorname, nachname) values ([%tfVorname%], [%tfName%]) | ||
42 | {{/code}} | ||
43 | |||
44 | (% style="color: rgb(204, 0, 0);" %)**Falsch** | ||
45 | |||
46 | {{code language="sql"}} | ||
47 | INSERT INTO test_tabelle (vorname, nachname) values ('[%tfVorname%]', '[%tfName%]') | ||
48 | {{/code}} |