Bueno resulta que estoy usando este procedimiento para acceder a los registros de una tabla,,, el tema es que es un ejemplo el cual adapte a mis necesidades y si bien funciona no entiendo del todo el código
Código:
por ejemplo esta linea no se bien que hace CREATE DEFINER=`root`@`localhost` PROCEDURE `probar`(codprop int, sucup varchar(1), cantidadusar int, codventap int) BEGIN declare done int default 0; declare cant int; declare indi int; declare precioc decimal(15,2); declare cur cursor for select cantidad, indice, pre_com from mov_com where codpro = codprop and sucursal = sucup order by indice; DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1; open cur; repeat fetch cur into cant, indi, precioc; if not done then if cantidadusar > cant then set cantidadusar = cantidadusar - cant; insert into productosmov(codpro, cantidad, sucursal) values (codprop, cant, 'm'); else insert into productosmov(codpro, cantidad, sucursal) values (codprop, cant, 'n'); end if; end if; until done end repeat; close cur; END
Código:
tambien no entiendo si lo que hace es recorrer los registros haciendo un ciclo y si es asi suponiendo que quiero que salga antes de lo prievisto del mismo como lo hago. Es decir salir de el si se cumple una condicion sin esperar a que termine de recorrer todos los registros del ciclo.DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done =1;
Bueno mientras mas info mejor, yo estube leyendo pero no pude sacarme algunas dudas
Ah me olvidaba, tambien me gustaria saber como ir al ultimo registro de los seleccionados con select
gracias