Oracle - Ejecutar un procedimiento almacenado

 
Vista:

Ejecutar un procedimiento almacenado

Publicado por jonathan (4 intervenciones) el 05/10/2007 21:10:23
Buenas tardes tengo el siguiente procedimiento almacenado que realiza una consulta a una tabla y muestra toda la informacion, cuando lo ejecuto desde sqlplus no hay problema pero cuando lo trato de ejecutar desde vb 6.0 no me arroja ninguna informacion..quisiera saber si el sp esta mal creado o si el problema es desde vb6.0

CREATE OR REPLACE PROCEDURE MOSTRAR is
cursor curt
is
SELECT *FROM T;
BEGIN
FOR T IN curt LOOP
DBMS_OUTPUT.PUT_LINE(t.uno || ' ' || t.dos);
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE ('NO HAY DATOS');
WHEN TOO_MANY_ROWS THEN
DBMS_OUTPUT.PUT_LINE ('MUCHOS DATOS');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE ('SE PRESENTO UN ERROR');
END MOSTRAR;

y asi lo estoy ejecutando desde la aplicacion vb 6.0

qry = "mostrar"
tbl.CursorLocation = adUseClient
tbl.LockType = adLockBatchOptimistic
tbl.Open qry, con

If Not tbl.EOF Then
MsgBox (tbl(0))
End If
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:Ejecutar un procedimiento almacenado

Publicado por Jorge Elias (13 intervenciones) el 07/10/2007 03:34:07
Hola,

Mira no se mucho de VB, pero me parece que el error esta en que tu procedure no esta devolviendo informacion lo unico k estas haciendo es pintandola, ya que el DBMS_OUTPUT.PUT_LINE te sirve para mostrar inf en pantalla es por eso cuando usas el sqlplus te muestra dicha inf, en cambio con el vb tu necesitarias recuperarla en alguna variable de salida para poder mostrar o procesarla segun tu conveniencia.

Deberias poner alguna variable OUT para que cuando llames a dicho procedure por el VB la puedas trabajar.
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