Programación General > Bases de Datos

 Como llamar funciones de base de datos desde VB 6.0????

(1/2) > >>

mariosnash:
Bueno el problema que tengo es que nose como llamar funciones que se encuentran en una base de datos postgres usando el VB 6.0  :ouch: ....aclaro que me contecto atraves de un DataEnvironment y que algunas funciones me devuelven datos como asi tambien reciben parametros, por favor espero su ayuda  :(
muchas gracias  :)

m0skit0:
Supongo que te refieres a PostgresSQL. ¿Qué tal si detallas más tu problema? ¿Algo de código? (sin olvidar las etiquetas, por supuesto).

mariosnash:
La base de datos es PostgresSQL como decis y la funcion que cree en ella es:

--- Código: SQL ---CREATE FUNCTION diferencia (int4, int4)RETURNS int4AS $$DECLAREa int4;b int4;res int4;BEGIN a:= $1;b:= $2;res:= b - a;RETURN res;END;$$LANGUAGE 'plpgsql'; 
Es una funcion sencilla que la estoy usando de prueba, es una diferencia entre dos parametros y me devuelve un resultado, en el postgres funciona.
Ahora cuando yo creo un proyecto en VB 6.0 y me conecto atraves de un DataEnvironment: creando un comando que me llame a la funcion, creando un form con 3 textbox (dos para los parametros de la funcion y uno para el resultado) y un command button....nose como hacer para que me funcione, la codificacion que uso es la siguiente:

D.diferencia (text1.text, text2.text)
set text3.datasource = D.rsdiferencia

Donde "D" es mi conexion o el nombre de mi DataEnvironment
"diferencia" es mi comando creado para llamar a la funcion

Para crear el comando en el DataEnvironment lo que hago es clic derecho en mi conexion "agregar comando" una vez creado clic derecho en el comando propiedades, voy al origen de datos y en Objetos de la base de datos elijo procedimiento almacenado, en nombre del objeto elijo la funcion que cree en la base de datos "public.diferencia".....luego voy a la pestaña Avanzadas y y en tipo de bloqueo elijo "Optimistic" anteriormente marco el chekbox que me dice devuelve recorset.....

y bueno espero se halla entendido algo, saludos y gracias

m0skit0:
Me repito: UTILIZA LAS ETIQUETAS DE CÓDIGO, que no hay quien lea esos garabatos

mariosnash:
mmm....la verdad es que soy nuevito en esto y no se a que te referis con etiquetas, en relidad mi codificacion una vez creada mi conexion a la base de datos y el comando que llama a la funcion es solo esto:


--- Código: Visual Basic ---Private Sub Command1_Click()D.diferencia (text1.text, text2.text)set text3.datasource = D.rsdiferencia  
solo quiero saber con un ejemplo como puedo llamar a una funcion, pasarle parametros y recibir resultado de la misma funcion que se encuentra en una base de datos

perdon si no me hago entender  :unsure:
gracias

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa