Änderungen von Dokument DB-Abfragen
bearbeitet von XIMA Admin
am 30.11.2020, 13:45
am 30.11.2020, 13:45
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. gru1 +XWiki.ximaadmin - Inhalt
-
... ... @@ -13,6 +13,24 @@ 13 13 14 14 15 15 {{html wiki="true"}} 16 +<div class='xm-figure xm-float-right xm-clear-h2' data-alt='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='data_db_query_de.png' width='300' group='$height' group='$group' title='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'/}}<div class='xm-figure-caption'>Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.</div></div></div> 17 +{{/html}} 18 + 19 + 20 + 21 +{{html wiki="true"}} 22 +<div class='xm-figure xm-float-right xm-clear-h2' data-alt='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='data_db_query_de.png' width='300' group='$height' group='$group' title='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'/}}<div class='xm-figure-caption'>Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.</div></div></div> 23 +{{/html}} 24 + 25 + 26 + 27 +{{html wiki="true"}} 28 +<div class='xm-figure xm-float-right xm-clear-h2' data-alt='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='data_db_query_de.png' width='300' group='$height' group='$group' title='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'/}}<div class='xm-figure-caption'>Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.</div></div></div> 29 +{{/html}} 30 + 31 + 32 + 33 +{{html wiki="true"}} 16 16 <div class='xm-figure xm-float-right xm-clear-global' data-alt='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'><div class='xm-figure-inner' style='width:310px'>{{lightbox image='data_db_query_de.png' width='300' group='$height' group='$group' title='Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.'/}}<div class='xm-figure-caption'>Die Konfigurationsoberfläche zum Anlegen einer SQL-Abfrage besteht aus vier Teilen: (1) Liste der existierenden Datenbank-Abfragen, (2) Editor zum Definieren der SQL-Abfrage, (3) Einstellungen der Datenbank-Abfrage, (4) Konsole zum Testen der Datenbank-Abfrage.</div></div></div> 17 17 {{/html}} 18 18 ... ... @@ -45,7 +45,7 @@ 45 45 |name|Muss dem Namen der Datenbank-Abfrage entsprechen.|Ja 46 46 |mandantName|Muss dem Namen des Mandanten entsprechen, unter welchen diese Datenbank-Abfrage erstellt wurde.|Ja, wenn //projektId// nicht gegeben 47 47 |projektId|Muss der ID des Formulars entsprechen. Diese Information kann über {{code language="javascript"}}XFC_METADATA.currentProject.id{{/code}} abgerufen werden.|Ja, wenn //mandantName// nicht gegeben 48 -|--sqlParameter--|Synonym für //queryParameter//. Sollte in {{formcycle/}} Version 6 nicht mehr verwendet werden und wird voraussichtlich in der nächsten Major-Version entfernt.| 66 +|--sqlParameter--|Synonym für //queryParameter//. Sollte in {{formcycle/}} Version 6 nicht mehr verwendet werden und wird voraussichtlich in der nächsten Major-Version entfernt.|Nein 49 49 |queryParameter|Nur erforderlich, wenn innerhalb der Datenbank-Abfrage Platzhalter in Form eines Fragezeichens verwendet werden. Ist dies der Fall, so entspricht dieser der komma-separierten Listen der zu verwendeten Parameter. 50 50 51 51 Wenn möglich sollte für neue Projekte anstelle des Parameters //queryParameter// der Parameter //queryParameterValues// verwendet werden, da //queryParameter// in einer zukünftigen Version von {{formcycle/}} nicht mehr unterstützt werden wird.|Nein ... ... @@ -88,6 +88,10 @@ 88 88 89 89 Soll das Ergebnis einer Datenbankabfrage direkt in ein [[Auswahlelement>>doc:Formcycle.FormDesigner.FormElements.Selection]] geladen werden, erfolgt dies über die Eigenschaften des Auswahlelements im {{designer case="dat"/}}. 90 90 109 +{{info}} 110 +Abfragen die in Auswahlelementen eingesetzt werden, dürfen kein "?" beinhalten, da diese Abfragen einen Übergabeparameter erwarten und dies bei Auswahlelementen nicht möglich ist. Abfragen mit einem "?" werden nicht als Datenquelle bei Auswahlelementen angeboten. 111 +{{/info}} 112 + 91 91 {{figure image="data_db_query_designer_de.png"}} 92 92 Verwenden des Ergebnises einer Datenbankabfrage als Datenquelle für ein Auswahlelement im {{designer case="dat"/}}. 93 93 {{/figure}} ... ... @@ -110,6 +110,11 @@ 110 110 111 111 == Beipiele == 112 112 135 +{{info}} 136 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 kann Anstelle des Parameters //queryParameter// der Parameter //queryParameterValues// verwendet werden. Letzterer wird für neue Projekte empfohlen, da der Parameter //queryParameter// in einer zukünftigen Version von {{formcycle/}} nicht mehr unterstützt werden wird. In den folgenden Beispielen wird für jede SQL-Abfrage daher jeweils eine Servlet-Abfrage mit //queryParameter// und mit //queryParameterValues// gezeigt. 137 +{{/info}} 138 + 139 + 113 113 {{code language="sql"}} 114 114 select name, vorname from tabelle where vorname like(?) 115 115 {{/code}} ... ... @@ -116,8 +116,12 @@ 116 116 117 117 Diese SQL-Abfrage liefert die Namen aller Personen zurück, die einen bestimmten Vornamen haben. Nach welchem Vornamen gesucht werden soll, kann über einen URL-Parameter angegeben werden. 118 118 119 -Abfrage per Servlet: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Mustermann{{/code}} 146 +Abfrage per Servlet: 147 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Mustermann{{/code}} 120 120 149 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 mögliche Abfrage per Servlet: 150 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=Mustermann{{/code}} 151 +\\ 121 121 122 122 {{code language="sql"}} 123 123 select name, vorname from tabelle where id=? ... ... @@ -125,8 +125,12 @@ 125 125 126 126 Diese SQL-Abfrage liefert die Person mit einer bestimmten ID zurück. Die ID wird als URL-Parameter übergeben. 127 127 128 -Abfrage per Servlet: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=100{{/code}} 159 +Abfrage per Servlet: 160 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=100{{/code}} 129 129 162 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 mögliche Abfrage per Servlet: 163 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=100{{/code}} 164 +\\ 130 130 131 131 {{code language="sql"}} 132 132 select name, vorname from tabelle where ort like(?) AND plz = ? ... ... @@ -134,9 +134,13 @@ 134 134 135 135 Diese SQL-Abfrage liefert die Namen aller Personen zurück, die an einem bestimmten Ort wohnen. Der Ort mit Postleitzahl wird über URL-Parameter übergeben. 136 136 137 -Abfrage per Servlet: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Entenhausen,02442{{/code}}138 -{{ version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 kanndiegleiche Servlet-Abfrage auch folgendermaßen aufgerufen werden, wobei diese Form für neue Projekte empfohlen wird: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=Entenhausen&queryParameterValues=02442{{/code}}172 +Abfrage per Servlet: 173 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Entenhausen,02442{{/code}} 139 139 175 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 mögliche Abfrage per Servlet: 176 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=Entenhausen&queryParameterValues=02442{{/code}} 177 +\\ 178 + 140 140 {{code language="sql"}} 141 141 select name, vorname from tabelle where ort like concat(?, '%') 142 142 {{/code}} ... ... @@ -143,8 +143,12 @@ 143 143 144 144 Diese SQL-Abfrage liefert die Namen aller Personen zurück, die in einem Ort wohnen der mit den gesuchten Buchstaben/Zeichen **beginnt**. Das '%'-Zeichen dient als Platzhalter für beliebig viele beliebige Zeichen. Je nach verwendetem DBMS kann die Syntax geringfügig abweichen (hier: MySQL). Der gesuchte Wert wird über URL-Parameter übergeben. 145 145 146 -Abfrage per Servlet: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Entenhau{{/code}} 185 +Abfrage per Servlet: 186 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=Entenhau{{/code}} 147 147 188 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 mögliche Abfrage per Servlet: 189 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=Entenhau{{/code}} 190 +\\ 148 148 149 149 {{code language="sql"}} 150 150 select name, vorname from tabelle where lower(ort) like concat('%', lower(?), '%') ... ... @@ -152,4 +152,8 @@ 152 152 153 153 Diese SQL-Abfrage liefert die Namen aller Personen zurück, die in einem Ort wohnen der die gesuchten Buchstaben/Zeichen **beinhaltet**. Hierbei ist spielt die Klein/Groß-Schreibung keine Rolle, da die Abfrage in der Datenbank sowohl die Werte-Spalte als auch den eigentlichen Filter-Wert zu Kleinschreibung umwandelt (lower(...)). Der gesuchte Wert wird über URL-Parameter übergeben. 154 154 155 -Abfrage per Servlet: {{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=teHaUs{{/code}} 198 +Abfrage per Servlet: 199 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameter=teHaUs{{/code}} 200 + 201 +{{version major="6" minor="6" patch="3"/}}Ab {{formcycle/}} Version 6.6.3 mögliche Abfrage per Servlet: 202 +{{code language="none"}}http://meinserver/formcycle/datenquelledb?mandantName=ich&name=demo&queryParameterValues=teHaUs{{/code}}