delimiter ; drop table if exists `t1`; create table `t1`( `a` char(32) default null, `b` char(32) default null )engine=myisam default charset=latin1; insert into `t1`(`a`,`b`) values ('abcdef_id','abcdef_id'),('abcdef_name','abcdef_name'); drop procedure if exists `p1`; delimiter // create procedure `p1`() begin set @varc = ""; set @vard = ""; set @vare = ""; set @varf = ""; begin declare vard int default 0; declare done int default 0; declare varb char(255); declare vara char(255); declare cur1 cursor for select `a`, `b` from t1; declare continue handler for sqlstate '02000' set done = 1; open cur1; repeat fetch cur1 into varb, vara; if not done then set @vare = "test"; set @varf = "test"; set @varc = concat(@varc," '"); set vard = 0; set @vare = concat(@vare,", ",vara," ",varb); set @varf = concat(@varf,"......",varb); set @varc = concat(@varc,", '",varb, "'"); end if; until done end repeat; close cur1; set @vare = concat(@vare," .... ",""); end; end // delimiter ; call `p1`();