Hi zusammen,
tolles Forum habt ihr hier
!!
Ich bastel gerade an einem Werkzeug, dass mit Hilfe von Dropdown Feldern dynamisch SQL generieren soll.
Sprich wir haben 3 Dropdown-Menus (Farbe, Marke, Preisspanne) und der Code baut dann per if-then-else Konstruk (z.B., if farbe != nil, then sql = "where farbe = rot") im Hintergrund ein Query (genauer die Where Bedingung).
Das klappt so weit ganz gut und ist auch easy. Jetzt kam aber der Wunsch, dass die Quelle dynamisch selektiert werden muss. Also habe ich Dropdownmenu gebaut, bei welchem der User die Quelle auswählt, und im Hintergrund ein String mit dem "Select * from ... " befüllt wird.
Anschließend werden Select und Where-Bedingung zusammengepackt und abgeschickt. Alles läuft noch gut.
Jetzt kam der Einwand, dass die Quelle nicht immer nur ein flache Tabelle ist, sondern jedes Attribut ( = Dropdown Menu) in einer andere Tabelle steht. Sprich ich müsste einen komplexeren Join bauen, der so in mein aktuelles Design m.E. nicht mehr passt.
Mein erster Gedanke war, dass ich ein View anlege, damit ich mit meinem aktuellen Konstrukt nurnoch den Where-Filter setzen muss. Da weiß ich aber nicht, ob das alles so erlaubt ist.
Habt ihr vielleicht eine Idee, wie ich den ersten Teil (= Selektion) möglichst statisch schreiben kann, damit ich am Ende nur noch die Where Bedingung anheften muss?
Aktuell steht wirklich nur ganz simple "select * from tabelle1 where " in dem Selektionsfeld. Das Kritierium wird dann dynamisch angepappt "farbe = rot and marke = ford".
VIelen Dank und Gruß,
Easy
tolles Forum habt ihr hier

Ich bastel gerade an einem Werkzeug, dass mit Hilfe von Dropdown Feldern dynamisch SQL generieren soll.
Sprich wir haben 3 Dropdown-Menus (Farbe, Marke, Preisspanne) und der Code baut dann per if-then-else Konstruk (z.B., if farbe != nil, then sql = "where farbe = rot") im Hintergrund ein Query (genauer die Where Bedingung).
Das klappt so weit ganz gut und ist auch easy. Jetzt kam aber der Wunsch, dass die Quelle dynamisch selektiert werden muss. Also habe ich Dropdownmenu gebaut, bei welchem der User die Quelle auswählt, und im Hintergrund ein String mit dem "Select * from ... " befüllt wird.
Anschließend werden Select und Where-Bedingung zusammengepackt und abgeschickt. Alles läuft noch gut.
Jetzt kam der Einwand, dass die Quelle nicht immer nur ein flache Tabelle ist, sondern jedes Attribut ( = Dropdown Menu) in einer andere Tabelle steht. Sprich ich müsste einen komplexeren Join bauen, der so in mein aktuelles Design m.E. nicht mehr passt.
Mein erster Gedanke war, dass ich ein View anlege, damit ich mit meinem aktuellen Konstrukt nurnoch den Where-Filter setzen muss. Da weiß ich aber nicht, ob das alles so erlaubt ist.
Habt ihr vielleicht eine Idee, wie ich den ersten Teil (= Selektion) möglichst statisch schreiben kann, damit ich am Ende nur noch die Where Bedingung anheften muss?
Aktuell steht wirklich nur ganz simple "select * from tabelle1 where " in dem Selektionsfeld. Das Kritierium wird dann dynamisch angepappt "farbe = rot and marke = ford".
VIelen Dank und Gruß,
Easy