
cursores dolor de cabeza
Publicado por centaurux (11 intervenciones) el 23/07/2014 20:02:05
Hola que tal!!
Tengo el sigunete codigo dentro de una funcion.
BEGIN
DECLARE dum varchar(80);
DECLARE c CURSOR FOR
select clt_razon
FROM mainclt
where clt_rfc = pidrfc
and clt_cia = pcia;
set dum = 'x';
OPEN c;
FETCH c into dum;
CLOSE c;
if dum = 'x' then
set dum = 'No Asignado Externo';
end if;
return dum;
END
el problema que tengo es que el parametro pidrfc aveces va nulo, y cuando este vanulo me da un error de:
"#1329 - No data - zero rows fetched, selected, or processed "
es correcto que vaya nulo, cuando este valor sea nulo deberia procesar el cursor y no generar error, y en mi variable dum saber si cargo datos o no el cursor.
Alguein me puede orientar con esto, si se puee mejorar mi logica se los agradezco,
Saludos
gracias
centaurux
Tengo el sigunete codigo dentro de una funcion.
BEGIN
DECLARE dum varchar(80);
DECLARE c CURSOR FOR
select clt_razon
FROM mainclt
where clt_rfc = pidrfc
and clt_cia = pcia;
set dum = 'x';
OPEN c;
FETCH c into dum;
CLOSE c;
if dum = 'x' then
set dum = 'No Asignado Externo';
end if;
return dum;
END
el problema que tengo es que el parametro pidrfc aveces va nulo, y cuando este vanulo me da un error de:
"#1329 - No data - zero rows fetched, selected, or processed "
es correcto que vaya nulo, cuando este valor sea nulo deberia procesar el cursor y no generar error, y en mi variable dum saber si cargo datos o no el cursor.
Alguein me puede orientar con esto, si se puee mejorar mi logica se los agradezco,
Saludos
gracias
centaurux
Valora esta pregunta


0