一个分页存储过程的有关问题

一个分页存储过程的问题

搞了好久都没有搞好,那位大哥帮个忙帮我看一下:

DELIMITER   $$

DROP   PROCEDURE   IF   EXISTS   `huangxin`.`pagination_mysql`   $$

CREATE   PROCEDURE   `huangxin`.`pagination_mysql`   (

in   currpage   int,

in   columns   varchar(500),

in   tablename   varchar(500),

in   sCondition   varchar(500),

in   order_field   varchar(100),

in   asc_field   int,

in   primary_field   varchar(100),

in   pagesize   int

)

BEGIN

declare   sTemp   varchar(1000);

declare   sSql   varchar(4000);

declare   sOrder   varchar(1000);

    if   asc_field   =   1   then

        set   sOrder   =   concat( ‘   order   by   ‘,order_field, ‘   desc ‘);

        set   sTemp   =   ‘ <(select   min ‘;

    else

        set   sOrder   =   concat( ‘   order   by   ‘,order_field, ‘   asc ‘);

        set   sTemp   =   ‘> )select   max ‘;

    end   if;

    if   currpage   =   0   then

        if   sCondition   <>   ‘   ‘   then

            set   sSql   =   concat( ‘select   ‘,columns, ‘   from   ‘,tablename, ‘   where   ‘);

            set   sSql   =   concat(sSql,sCondition,sOrder);

        else

            set   sSql   =   concat( ‘select   ‘,columns, ‘   from   ‘,tablename,sOrder);

        end   if;

    else

        if   sCondition   <>   ‘ ‘   then

            set   sSql   =   concat( ‘select   ‘,columns, ‘   from   ‘,tablename);

            set   sSql   =   concat(sSql, ‘   where   ‘,sCondition, ‘   and   ‘,primary_field,sTemp);

            set   sSql   =   concat(sSql, ‘(private_key) ‘, ‘   from   (select   ‘);

            set   sSql   =   concat(sSql,primary_field, ‘   as   private_key   from   ‘,   tablename, ‘   where   ‘,sCondition,   sOrder);

            set   sSql   =   concat(sSql, ‘   limit   ‘,(currpage-1)*pagesize, ‘, ‘,   pagesize,   ‘)   as   tabtemp) ‘,   sOrder);

            /*set   sSql   =   concat(sSql,   ‘   limit   ? ‘);*/

        else

              set   sSql   =   concat( ‘select   ‘,columns, ‘   from   ‘,tablename);

              set   sSql   =   concat(sSql, ‘   where   ‘,

一个分页存储过程的有关问题

相关文章:

你感兴趣的文章:

标签云: