mysql plus baomidou_mysql-plus 设置问题

在Spring项目中遇到Mapper中的SQL语句无法执行的问题,错误提示是遇到了未预期的'IF'关键字。问题源于Mybatis-Plus的数据权限过滤导致。解决方案:在Mybatis-Plus 3.11及以上版本,可以在mapper上添加@SqlParser(filter=true)注解;而在3.10及以下版本,还需在配置中设置mybatis-plus.global-config.sql-parser-cache: true。
摘要由CSDN通过智能技术生成

问题:

在spring项目中mapper 里的sql 语句无法执行

在Navicat中可以运行,一些关键字会被认为错误

### Error querying database.  Cause: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException:

net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "if" "IF"

at line 3, column 9.

Was expecting one of:

"*"

"+"

"-"

"?"

"@"

"@@"

"ACTION"

"ANY"

"BYTE"

"CASCADE"

"CASE"

"CAST"

"CHAR"

"COLUMN"

"COLUMNS"

"COMMENT"

"COMMIT"

"DO"

"ENABLE"

"END"

"EXTRACT"

"FIRST"

"FOLLOWING"

"GROUP_CONCAT"

"INDEX"

"INSERT"

"INTERVAL"

"ISNULL"

"KEY"

"LAST"

"MATERIALIZED"

"NO"

"NULL"

"NULLS"

"OPEN"

"OVER"

"PARTITION"

"PERCENT"

"PRECISION"

"PRIMARY"

"PRIOR"

"RANGE"

"REPLACE"

"ROW"

"ROWS"

"SEPARATOR"

"SIBLINGS"

"TABLE"

"TEMP"

"TEMPORARY"

"TRUNCATE"

"TYPE"

"UNSIGNED"

"VALUE"

"VALUES"

"XML"

"ZONE"

"{d"

"{t"

"{ts"

"~"

项目使用了  Mybatis-Plus

项目中有用到多租户的功能,Mybatis-plus 会 进行数据权限的过滤

对这一条sql 进行权限放行

Mybatis-Plus3.11版本以上 在mapper上加注解即可

@SqlParser(filter=true)

3.10及以下版本 还需要在配置中添加

mybatis-plus:

global-config:

sql-parser-cache: true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值