Ver Mensaje Individual
  #1  
Antiguo 05-11-2008
tksko tksko is offline
Registrado
 
Registrado: nov 2008
Posts: 5
Reputación: 0
tksko Va por buen camino
Llamar a un stored procedure de mysql y recuperar resultados

Hola a todos!

bueno tengo un stored procedure en mi base de datos mysql.
resumiendo es algo asi

procedure conectar(IN elcospel INT UNSIGNED,IN elparq INT UNSIGNED)

hace cosas en el medio....... y antes de finalizar hago un select para devolver resultados:

SELECT 'cierre' as operacion,minutos as tiempo,newsaldo as saldo_actualizado;

ahora necesito desde Delphi llamar a ese procedimiento con parametros que el usuario ingresa y luego recuperar la informacion que este procedimiento me devuelve para poder mostrarla en delphi en un mensaje o hacer otras cosas.

El problema es que no me sale! ya probe con varios componentes, entre ellos ADOQuery con ExcecSQL y tambien ADOStoredProc.

Con AdoQuery.Excec funciona correctamente pero no me deja recuperar el resutlado que devuelve el procedimiento..

ADOQuery2.Active:= false;
ADOQuery2.SQL.Text:='CALL conectar('+idcospel+','+idparq+')';
ADOQuery2.ExecSQL;


con el Adostoredproc no me deja ni ejecutarlo, nose porque delphi insiste en agregarle llaves a la consulta ( {}) y esta falla.

with ADOStoredProc1 do begin
ProcedureName:='conectar';
Parameters.ParamByName('idcospel').Value:=strtoint(idcospel);
Parameters.ParamByName('idparq').Value:=strtoint(idparq);
ExecProc;
end;


me da un error de excepcion diciendo por ejemplo
Error en la sintaxis bla bla bla y pone {call conectar (2,55) }
no se porque le agrega llaves si yo en ningun momento las pongo :S


ya no se que hacer

si alguien puede ayudarme

gracias
Responder Con Cita