用双引号解析joSQL查询导致org.josql.parser.TokenMgrError:词法错误
试图运行下面的代码,在这个SQL语句试图找到colName2像group/test那样的值“(最后双引号的名字),并通过querySQL所字符串josql解析器。用双引号解析joSQL查询导致org.josql.parser.TokenMgrError:词法错误
public static void main(String a[])
{
String querySQL = new String("Select * from tabName WHERE ((colName1) = ((\"type\")) AND (colName2) LIKE ((\"%group/test\"%\"))) ORDER BY colName2 asc");
org.josql.Query josql = new org.josql.Query();
try
{
josql.parse(querySQL);
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.println(josql.toString());
}
以下异常已经发生,当我运行它,colName2包含在它双引号的字符串。没有人有关于如何通过任何想法josql解析器的双引号?
线程“main”org.josql.parser中的异常。 TokenMgrError:后:: “\”)))ORDER BY colName2 ASC”
在org.josql.parser.JoSQLParserTokenManager.getNextToken(JoSQLParserTokenManager.java:1420)
在组织位于第1行,列150遇到的词汇错误。 josql.parser.JoSQLParser.jj_scan_token(JoSQLParser.java:3725)
.........
.........
在org.josql.parser.JoSQLParser。查询(JoSQLParser.java:298)
在org.josql.parser.JoSQLParser.parseQuery(JoSQLParser.java:86)
在org.josql.Query.parse(Query.java:2032)
at main.JoSqlTest.main(JoSqlTest.java:12)
为什么你需要双引号?
可以/应该使用这里的单引号...
“从TABNAME选择*其中colName1 = '类型' AND colName2 LIKE“%组/测试\” %'ORDER BY colName2 ASC“