Gemeinsam zu mehr Effizienz in der Anwendungserstellung
K |
K |
||
Zeile 22: | Zeile 22: | ||
<source> | <source> | ||
FilterString = "Textfeld = '" & Replace(FilterWertVariable, "'", "''") & "'" | FilterString = "Textfeld = '" & Replace(FilterWertVariable, "'", "''") & "'" | ||
+ | </source> | ||
+ | |||
+ | |||
+ | Vereinfachte Schreibweise mittels Hilfsfunktion //TextToSqlText// aus [http://source.access-codelib.net/filedetails.php?repname=CodeLib&path=%2Ftrunk%2Fdata%2FSqlTools.bas|SqlTools]: | ||
+ | <source> | ||
+ | FilterString = "Textfeld = " & TextToSqlText(FilterWertVariable) | ||
</source> | </source> |
Wenn ein Filterausdruck als String zusammengesetzt wird, ist zu beachten, dass die Filterwerte SQL-konform in Text konvertiert werden.
Der Text-Filterwert muss mit ' umschlossen sein. Bei Jet/ACE ist z.B. auch " möglich.
Filterwert: abc
... Textfeld = 'abc'
Dabei ist zu beachten, dass ' im Filterwert im obigen Fall verdoppelt werden müssen, da sonst der Text zu früh als beendet markiert wird.
Filterwert: a'b
... Textfeld = 'a''c'
=> Filterwert ist in Variable gespeichert:
FilterString = "Textfeld = '" & Replace(FilterWertVariable, "'", "''") & "'"
Vereinfachte Schreibweise mittels Hilfsfunktion //TextToSqlText// aus [1]:
FilterString = "Textfeld = " & TextToSqlText(FilterWertVariable)