MySQL - Recorrer tabla secuencialmente

 
Vista:

Recorrer tabla secuencialmente

Publicado por Marco (2 intervenciones) el 23/06/2002 19:20:43
Disculpen, hay alguien que me pueda decir como puedo recorrer de manera secuencial un tabla creada en MYSQL (registro por registro)...

El acceso lo estoy realizando por OBDC en PHP..

Espero que alguien me pueda ayudar...

De antemano mil gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Recorrer tabla secuencialmente

Publicado por Ing. Roger Retamoza (1 intervención) el 16/02/2008 18:33:58
debes crear un procedure y manejar un cursor algo como esto.

drop procedure if exists myalliquidacion;

CREATE PROCEDURE myalliquidacion (in Pfi date,in Pff date)
begin
declare veof,Weof INT default 0;
declare Wpropiedad char(12) default '';
declare Wnit char(15);
declare Wdirecc,Wnombre char(100) default '';
declare crliq cursor for select inmu_codigo,inmu_direccion
from myalpropiedades
where inmu_estado='A'
order by inmu_codigo ;
declare continue handler for sqlstate '02000' set veof=1, Weof=1;
drop table if exists crpropiedad;
create temporary table crpropiedad (
inmu_codigo varchar(12),
inmu_direccion varchar(100),
pers_nit varchar(15),
pers_nombre varchar(100))
ENGINE=MEMORY;

open crliq;
fetch crliq into Wpropiedad,Wdirecc;
while NOT veof do
begin
declare crprop cursor for
select prop_codigo,pers_nombre
from myalpropietariosinmuebles
left join myalpropietarios on prop_codigo=inpr_propietario
left join myagpersonas on pers_nit=prop_nit
where inpr_propiedad=Wpropiedad and inpr_estado='A';
open crprop;
fetch crprop into Wnit,Wnombre;
repeat
insert into crpropiedad VALUES (Wpropiedad,Wdirecc,Wnit,Wnombre);
fetch crprop into Wnit,Wnombre;
until Weof end repeat;
close crprop;
end;
fetch crliq into Wpropiedad,Wdirecc;
end while;
close crliq;
select * from crpropiedad;
end

call myalliquidacion('000-00-00','0000-00-00');
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar