Merlin_Level_E Geschrieben 3. August 2005 Geschrieben 3. August 2005 Hallo meine Lieben, da ich bisher im Inet und auch noch nicht hier einen passenden Wink mit dem Telegraphenmast gefunden (oder übersehen) habe, möchte ich euch kurze Frage stellen. Vielleicht habe ich einfach Scheuklappen auf und sehe die Lösung nicht, auch wenn sie mir schon unter der Nase schwebt Ma sehen. Ich muss in meiner Java Applikation SQL Statements nutzen, die mit Platzhaltern versehen sind (Stringplätze, keine PreparedStatements). query = "SELECT ADRESSE FROM KHKAdressen " + "WHERE NAME1 = ' "+rsQuelle.getString("NAME1")+" ' " + "AND LIEFERSTRASSE = ' "+rsQuelle.getString("STRASSE")+" ' " + "AND LIEFERORT = ' "+rsQuelle.getString("ORT")+" ' "; Mein Problem ist nun dass der mögliche Inhalt Leerzeichen und Hochkomma enthalten kann/wird, die den String unterbrechen. Bsp: 'L'oreal GmbH' Daher suche ich nach einem "alternativen" Zeichen für die String-Einläutung unter Java bezüglich der SQL Strings. Prepared Statements passen aufgrund der Leerzeichen hier auch nicht, \' und Quotes klappt ebenfalls nicht. Danke und Gruß, Merlin_Level_E
perdian Geschrieben 3. August 2005 Geschrieben 3. August 2005 Prepared Statements passen aufgrund der Leerzeichen hier auch nichtWarum nicht? Was genau spricht gegen ein PreparedStatement? Für genau solche Anwendungsfälle sind die Dinger schließlich konzipiert.
etreu Geschrieben 3. August 2005 Geschrieben 3. August 2005 Du könntest auch die Sonderzeichen mittels RegEx ersetzen (jeweils ein Backslash davor schreiben). Damit maskierst du die Sonderzeichen und diese werden nicht interpretiert. Allerdings sind die PreparedStatements wirklich vorzuziehen!!!
Merlin_Level_E Geschrieben 4. August 2005 Autor Geschrieben 4. August 2005 iLoha, besten Dank an Euch. Bin auf Prepared Statements umgestiegen und die Ausführung läuft nun endlich. Warum ich nun der festen Überzeugung war dass dies nicht gehen würde, weiss ich nun leider auch nicht mehr Nochmals danke ! iMe
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden