2015-07-29 1 views
1

J'essaie de faire une requête SalesForce à partir de Java et je souhaite insérer la date et l'heure actuelles dans la requête. Cependant, je veux aussi ajouter un joker pour le titre, et le pourcentage pour le joker est interprété comme un spécificateur de format et donner une erreur.Le spécificateur de format de chaîne Java entre en collision avec le caractère générique SOQL

String soqlQuery = new String.format("SELECT Id, Title, CreatedDate " 
         + "FROM FeedItem " 
         + "WHERE title like '%ven%' and createdDate %s ", timeOfLastQuery); 

j'ai pu utiliser simplement la concaténation de chaîne pour contourner le problème, mais je voudrais savoir s'il y a un moyen de faire créer une chaîne de requête qui contient un caractère générique spécifique en utilisant des chaînes formatées.

Répondre

2

Vous pouvez leur échapper avec un autre % comme

String soqlQuery = new String.format("SELECT Id, Title, CreatedDate " 
        + "FROM FeedItem " 
        + "WHERE title like '%%ven%%' and createdDate %s ", timeOfLastQuery);