Ver Mensaje Individual
  #2  
Antiguo 24-05-2005
DobleSiete DobleSiete is offline
Miembro
 
Registrado: ene 2005
Posts: 32
Reputación: 0
DobleSiete Va por buen camino
Solución: retornar variable

Ya que los componentes ZStoredProc se empeñan en hacerle SELECT a procedimiento almacenado sin retorno de valores (en vez de llamarlos con EXECUTE PROCEDURE de manera inteligente) lo mas sencillo es hacer que el procedimiento retorne una variable, pero no necesariamente con un valor, de esta manera:

Código SQL [-]
  DROP PROCEDURE zap_middatos;
  
  SET TERM !!;
  CREATE PROCEDURE zap_middatos RETURNS (x INT)
  AS
  BEGIN
    DELETE FROM middatos;
  END!!
  SET TERM ;!!

La variable x (un entero) está declarada, pero no inicializada. Por lo tanto da lo mismo llamarlo con

Código SQL [-]
EXECUTE PROCEDURE zap_middatos

que usando

Código SQL [-]
SELECT * FROM zap_middatos

Pero en un componente ZStoredProc solamente el segundo funciona, imagino que es porque no es "inteligente" y no evalua si el procedimiento devuelve o no variables (no valores).

Eso es todo...
supongo que muchos lo sabían... pero unos pocos no, así que para ellos va la explicación :-)
__________________
"Nadie es perfecto" (Don Nadie)

Última edición por DobleSiete fecha: 24-05-2005 a las 14:15:00.
Responder Con Cita