Следующий код вызывает исключение, потому что в строковом поле есть зарезервированное слово SQL «by». Как бы мне избежать этого зарезервированного слова. Код предназначен для хранилища данных Google.
String field="Hosted by me"
PersistenceManager pm=PMF.get().getPersistenceManager();
try{
Query query=pm.newQuery("select from "+SomeObject.class.getName()
+" where mField=='"+field+"'");
_logger.info(query.toString());
SomeObject=query.execute();
}finally{
pm.close();
}
Вот исключение:
org.datanucleus.exceptions.NucleusUserException: запрос содержит ключевое слово JDOQL ("by"), которое вышло из строя. Ключевые слова могут использоваться только в определенном порядке.