Comment faire pour échapper un guillemet simple dans sql qui provoque la 'chaîne entre guillemets non terminée correctement'?

Je suis en train de lire les conditions générales à partir d'une base de données (>10 km) et j'utilise ce terme dans une autre requête. J'obtiens l'erreur suivante dans Oracle:

chaîne de caractères entre guillemets pas terminée correctement'

Je n'ai

term.replaceAll("'", "\\'");

mais qui ne semble pas faire le travail à partir de moi. En outre, ces termes sont des jetons de documents lorsqu'ils sont convertis en texte. Est-il une expression régulière qui peuvent remédier à ce problème?

L'exacte requête SQL est:

String sql = "Select * from indexDB where (DocID=" + d.getDocId() + "and Term='" + term + "')";

Je suis à l'aide de Java. Le remplacement ne fonctionne pas pour moi.

source d'informationauteur Aashima