当我执行以下命令时,在postgresql下完全正常
select distinct on(device_id) * FROM vehicle
在druid 中 会报以下错误:
Cause: java.sql.SQLException: sql injection violation, dbType postgresql, , druid-version 1.2.16, syntax error: ERROR. pos 71, line 1, column 71, token ) : SELECT COUNT() FROM (SELECT DISTINCT ON (device_id) FROM vehicle) TOTAL ; uncategorized SQLException; SQL state [null]; error code [0]; sql injection violation, dbType postgresql, , druid-version 1.2.15, syntax error: ERROR. pos 71, line 1, column 71, token ) : SELECT COUNT() FROM (SELECT DISTINCT ON (device_id) FROM gs_vehicle) TOTAL; nested exception is java.sql.SQLException: sql injection violation, dbType postgresql,
通过单元测试,也报以下错误:
Exception in thread "main" com.alibaba.druid.sql.parser.EOFParserException: EOF
at com.alibaba.druid.sql.parser.SQLExprParser.primary(SQLExprParser.java:1092)
at com.alibaba.druid.sql.dialect.postgresql.parser.PGExprParser.primary(PGExprParser.java:150)
at com.alibaba.druid.sql.parser.SQLExprParser.expr(SQLExprParser.java:104)
at com.alibaba.druid.sql.parser.SQLExprParser.parseSelectItem(SQLExprParser.java:6310)
at com.alibaba.druid.sql.parser.SQLSelectParser.parseSelectList(SQLSelectParser.java:1052)
at com.alibaba.druid.sql.dialect.postgresql.parser.PGSelectParser.query(PGSelectParser.java:103)
at com.alibaba.druid.sql.parser.SQLSelectParser.select(SQLSelectParser.java:61)
at com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser.parseSelect(PGSQLStatementParser.java:416)
at com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser.parseSelect(PGSQLStatementParser.java:30)
at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:200)
at com.alibaba.druid.sql.SQLUtils.parseStatements(SQLUtils.java:596)
at com.alibaba.druid.sql.SQLUtils.parseStatements(SQLUtils.java:617)
at com.alibaba.druid.sql.PagerUtils.limit(PagerUtils.java:55)
at com.alibaba.druid.postgresql.PGLimitTest.main(PGLimitTest.java:18)
当我执行以下命令时,在postgresql下完全正常 select distinct on(device_id) * FROM vehicle
在druid 中 会报以下错误:
Cause: java.sql.SQLException: sql injection violation, dbType postgresql, , druid-version 1.2.16, syntax error: ERROR. pos 71, line 1, column 71, token ) : SELECT COUNT() FROM (SELECT DISTINCT ON (device_id) FROM vehicle) TOTAL ; uncategorized SQLException; SQL state [null]; error code [0]; sql injection violation, dbType postgresql, , druid-version 1.2.15, syntax error: ERROR. pos 71, line 1, column 71, token ) : SELECT COUNT() FROM (SELECT DISTINCT ON (device_id) FROM gs_vehicle) TOTAL; nested exception is java.sql.SQLException: sql injection violation, dbType postgresql,
通过单元测试,也报以下错误: Exception in thread "main" com.alibaba.druid.sql.parser.EOFParserException: EOF at com.alibaba.druid.sql.parser.SQLExprParser.primary(SQLExprParser.java:1092) at com.alibaba.druid.sql.dialect.postgresql.parser.PGExprParser.primary(PGExprParser.java:150) at com.alibaba.druid.sql.parser.SQLExprParser.expr(SQLExprParser.java:104) at com.alibaba.druid.sql.parser.SQLExprParser.parseSelectItem(SQLExprParser.java:6310) at com.alibaba.druid.sql.parser.SQLSelectParser.parseSelectList(SQLSelectParser.java:1052) at com.alibaba.druid.sql.dialect.postgresql.parser.PGSelectParser.query(PGSelectParser.java:103) at com.alibaba.druid.sql.parser.SQLSelectParser.select(SQLSelectParser.java:61) at com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser.parseSelect(PGSQLStatementParser.java:416) at com.alibaba.druid.sql.dialect.postgresql.parser.PGSQLStatementParser.parseSelect(PGSQLStatementParser.java:30) at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:200) at com.alibaba.druid.sql.SQLUtils.parseStatements(SQLUtils.java:596) at com.alibaba.druid.sql.SQLUtils.parseStatements(SQLUtils.java:617) at com.alibaba.druid.sql.PagerUtils.limit(PagerUtils.java:55) at com.alibaba.druid.postgresql.PGLimitTest.main(PGLimitTest.java:18)