MyBatis Plus的分页插件支持哪些数据库?

MyBatis Plus的分页插件原理是在SQL执行之前,动态添加分页条件。

它支持以下主要数据库:

  1. MySQL
    为MySQL添加limit分页条件:
select * from user limit #{page}, #{size} 
  1. Oracle
    为Oracle添加rownum伪列:
select * from (
    select a.*, rownum r 
    from ( select * from user) a 
    where rownum <= #{offset+pageSize} 
   ) where r >= #{offset}
  1. SQLServer
    使用 SQLServer 的分页函数:
select * from user 
order by id 
offset #{offset} rows    
fetch next #{pageSize} rows only
  1. Postgres
    为Postgres添加limit分页:
select * from user  
limit #{pageSize} offset #{offset}
  1. DB2
    为DB2添加fetch分页:
select * from user  
fetch first #{pageSize} rows only    
offset #{offset}
  1. H2
    为H2数据库添加分页:
select * from user
limit #{pageSize} offset #{offset}
  1. SQLite
    同样支持limit分页:
select * from user 
limit #{pageSize} offset #{offset} 

总结,Mybatis Plus的分页插件支持的主要数据库有:

MySQL、Oracle、SQLServer、Postgres、DB2、H2、SQLite等数据库。

对于不同数据库,插件会生成对应的分页语句。