Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2006
La__X La__X is offline
Miembro
 
Registrado: ene 2006
Posts: 46
Poder: 0
La__X Va por buen camino
Red face Emplear Store Procedure

Holas,
Como hago para llamar un strore procedure en mi aplicacion, ya esta conectada con la base de datos y todo, quiero saber como puede utilizar mis store procedure, es decir como y donde declaro el nombre que componente llama al store proc.
Gracias
Responder Con Cita
  #2  
Antiguo 16-01-2006
cuburu cuburu is offline
Miembro
 
Registrado: mar 2005
Posts: 63
Poder: 20
cuburu Va por buen camino
Que tal.

Mira, ultimamente yo he estado en las mismas. Lo que estoy utilizando es los siguiente:

Dalphi 5 Enterprise.
Base de Datos Firebird 1.5 embedded.

Lo que pude hacer para solamente mandar llamar a un procedimiento sin enviarle paramentros fue trabajar con los objetos:

IBDataBase.
IBTransaction.
IBStoreProc.

Lo que hice fue:

1.- Conectar a IbDatabase en su propiedad database name con la BD que necesitaba, en la propiedad Params colocar el user y password de la BD. Si deseas se conecte sin que aparezca la pantalla de petición de user y pass deshabilita ésta opción en la propiedad del objeto.

2.- Conectar el IBTransaction con el IBDatabase.

3.- Conectar el IBStoreProc con IBDataBase e IBTransaction y seleccionar el procedimiento en la propiedad correspondiente. Ojo, no trates de activar el IBStoreProc en tiempo de diseño, haslo hasta que ejecutes el programa con IBStoreProc.ExecProc.

Para enviar parametros al store procedure:

1.- Si lo que quieres es enviarle parametros al store procedure lo que debes de hacer es utilizar un IBQuery y realizar las ligar con los otros objetos igual que el IBStoreProc.

2.- Después realizar la consulta con un:

Código Delphi [-]
  SELECT * FROM nombre del procedimiento(param1, param2, ..., paramx)

Asi es como yo he estado trabajando con los procedimientos. Si descubres como enviar parametros con el objeto IBStoreProc te agradecería me pasaras el tip.

De hecho por ahi tengo un hilo que describe los problemas que he tenido con esto. Lo coloque hace un par de semasnas + ó -.

Suerte.
Responder Con Cita
  #3  
Antiguo 16-01-2006
Avatar de fabianbbg
fabianbbg fabianbbg is offline
Miembro
 
Registrado: ago 2003
Ubicación: Corrientes, Argentina
Posts: 80
Poder: 21
fabianbbg Va por buen camino
Hola "La X"


Cita:
Empezado por La__X
Como hago para llamar un strore procedure en mi aplicacion, ya esta conectada con la base de datos y todo, quiero saber como puede utilizar mis store procedure, es decir como y donde declaro el nombre que componente llama al store proc.
Gracias
Podrias por favor dar mas datos como: Que lenguaje de desarrollo usas y a que motor de Base de Datos accedes?..
gracias...
__________________
desde Corrientes, Argentina..
Cuna del Libertador de America
Responder Con Cita
  #4  
Antiguo 18-01-2006
La__X La__X is offline
Miembro
 
Registrado: ene 2006
Posts: 46
Poder: 0
La__X Va por buen camino
Estoy empleando Borland Delphi 6 y la BD esta en SQL 2000
Responder Con Cita
  #5  
Antiguo 18-01-2006
Ricardojosep Ricardojosep is offline
Miembro
 
Registrado: sep 2003
Ubicación: Sgo del estero (Argentina)
Posts: 75
Poder: 21
Ricardojosep Va por buen camino
Entonces...

Si usas Delphi 6 y SQL Server 2000, entonces estoy casi seguro que usas ADO para conectarte. Entonces... deberias usar el TADOStoredProc para conectarte con tu SP.
Para asignarles los parametros de Entrada usas:

Código Delphi [-]
ADOStoredProc1.Parameters.Items[1].Value := Parametro1;
ADOStoredProc1.Parameters.Items[2].Value := Parametro2;
ADOStoredProc1.Parameters.Items[3].Value := Parametro3;
ADOStoredProc1.ExecProc;

Y para obtener el resultado en caso de que exista debes usar algo como esto:

Código Delphi [-]
Salida := ADOStoredProc1.Parameters.Items[0].Value

Otra forma para las entradas es:

Código Delphi [-]
ADOStoredProc1.Parameters.ParamByName('Parametro1').Value := Par1;
ADOStoredProc1.Parameters.ParamByName('Parametro2').Value := Par2;
ADOStoredProc1.Parameters.ParamByName('Parametro3').Value := Par3;

y la otra forma para obtener la salida es:

Código Delphi [-]
Salida := ADOStoredProc1.Parameters.ParamByName('ParametroSalida').Value;

Previamente le asignas el nombre del SP al componente TADOStoredProc, esto lo puedes hacer en tiempo de diseño, la propiedad donde va el nombre es ProcedureName. Antes de eso le tienes que asignar la Base de Datos en la propiedad Connection.

En caso de que no uses ADO para conectarte dilo asi te comento como se hace. Pero en todos es muy parecido

Saludos!!!
__________________
La amistad es la union de dos almas para formar una sola.
Responder Con Cita
  #6  
Antiguo 19-01-2006
La__X La__X is offline
Miembro
 
Registrado: ene 2006
Posts: 46
Poder: 0
La__X Va por buen camino
Finalmente emplee lo de ADO y hasta ahora toda va bien
GRacias por las respuestasssss

Cita:
Empezado por Ricardojosep
Si usas Delphi 6 y SQL Server 2000, entonces estoy casi seguro que usas ADO para conectarte. Entonces... deberias usar el TADOStoredProc para conectarte con tu SP.
Para asignarles los parametros de Entrada usas:

Código Delphi [-]
ADOStoredProc1.Parameters.Items[1].Value := Parametro1;
ADOStoredProc1.Parameters.Items[2].Value := Parametro2;
ADOStoredProc1.Parameters.Items[3].Value := Parametro3;
ADOStoredProc1.ExecProc;

Y para obtener el resultado en caso de que exista debes usar algo como esto:

Código Delphi [-]
Salida := ADOStoredProc1.Parameters.Items[0].Value

Otra forma para las entradas es:

Código Delphi [-]
ADOStoredProc1.Parameters.ParamByName('Parametro1').Value := Par1;
ADOStoredProc1.Parameters.ParamByName('Parametro2').Value := Par2;
ADOStoredProc1.Parameters.ParamByName('Parametro3').Value := Par3;

y la otra forma para obtener la salida es:

Código Delphi [-]
Salida := ADOStoredProc1.Parameters.ParamByName('ParametroSalida').Value;

Previamente le asignas el nombre del SP al componente TADOStoredProc, esto lo puedes hacer en tiempo de diseño, la propiedad donde va el nombre es ProcedureName. Antes de eso le tienes que asignar la Base de Datos en la propiedad Connection.

En caso de que no uses ADO para conectarte dilo asi te comento como se hace. Pero en todos es muy parecido

Saludos!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
problemas con TDBImage Nelly Varios 5 24-11-2005 18:07:28
¿alguien conoce el uso de la clase TOwnerCollection? fredo OOP 11 01-08-2005 18:05:56
Crear un Componente TScrollbox con botones dentro CORBATIN OOP 15 06-05-2004 22:48:37
Problemas al insertar en una tabla vhirginia Conexión con bases de datos 30 21-04-2004 22:54:57
incremento de store procedure uper Firebird e Interbase 5 21-04-2004 19:15:59


La franja horaria es GMT +2. Ahora son las 02:58:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi