create PROCEDURE test1(curruentPage int,pageSize int,tableName VARCHAR(20))
BEGIN
set @pageindex:=(curruentPage-1)*pageSize;
‘select * from ’+tableName +‘ limit ’+@pageindex+‘,’+pageSize ;
END
存储过程test1中我们把传入的表名放入字符串中进行+拼接,
数据库不能正常执行
create PROCEDURE test2(curruentPage int,pageSize int,tableName VARCHAR(20))
BEGINset @pageindex:=(curruentPage-1)*pageSize;
SET @str=CONCAT('select * from ',tableName,' limit ',@pageindex,',',pageSize);
PREPARE str from @str;
EXECUTE str;
END
test2中换成concat('str1','str2',...)拼接
预编译
执行
ok!传入当前页数,页面size,以及表名 可以执行分页查询,后台java代码只需要调用存储过程test2