Ich vermute, Sie konstruieren die SQL in irgendeiner Weise wie
String sql = "Select Column from tab where column='" + StringParm + "'";
Oder so ähnlich? Wenn Sie das tun, sind Sie offen für alle Arten von Exploits und Sie werden auch ein Verhalten wie das von Ihnen beschriebene sehen, bei dem die resultierende Zeichenfolge kein gültiges SQL mehr ist. Sie müssten zuerst den vom Benutzer angegebenen Parameter maskieren.
Die beste Lösung ist die Verwendung von PreparedStatements, also tun Sie es
Statement stmt = conn.prepareStatement("Select Column from tab where column=?");
stmt.setString(1,StringParam);
Ich sehe jedoch keine schnelle Möglichkeit, Ihr Problem zu lösen, ohne Java-Code zu ändern, außer vielleicht die Eingabe zu maskieren/zu bereinigen, bevor sie auf Ihren Code trifft (z. B. Javascript, wenn Sie eine Webanwendung sind)