问题:同一个 sql,放到 plsql 执行没问题,放到项目中用 mybstis 就出不来。 sql: select * from (select xn,qxdm,nj,xk,gxsj,nvl(cbbb,'null')cbbb from jczd_gjjcxy) t pivot( max(t.cbbb) for xk in ( '道德与法制' as cnt1, '语文' as cnt2, '数学' as cnt3, '音乐' as cnt4, '美术' as cnt5, '科学' as cnt6, '英语' as cnt7, '书法' as cnt8, '信息技术' as cnt9 ) ) where 1=1 报错内容: 1.Cause: java.sql.SQLException: sql injection violation, syntax error: syntax error, expect RPAREN, actual FOR pos 116, line 2, column 25, token FOR :(上面的 sql ) 2.uncategorized SQLException; SQL state [null]; error code [0]; sql injection violation, syntax error: syntax error, expect RPAREN, actual FOR pos 116, line 2, column 25, token FOR:(上面的 sql ) 3.com.alibaba.druid.sql.parser.ParserException: syntax error, expect RPAREN, actual FOR pos 116, line 2, column 25, token FOR 补充: 1.正常 sql 能在项目用,就这个不能再项目中用,但这个 sql 在 plsql 是完全能执行的。 2.这个 sql 用来行转列。 3.卡在这一天了,救命。 4.帮得上的回复必感谢
1
dustinyjj 2020-10-29 09:22:01 +08:00
老哥,这个问题解决了吗
|
3
dustinyjj 2020-10-29 09:39:48 +08:00
咋解决,能说下吗?我也遇到了这个问题,搞了好久才看到你这个帖子
|
5
sunziren OP |
6
dustinyjj 2020-10-29 09:55:31 +08:00
可以了,感谢老哥!!!
|