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 19-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
ayuda trabajar con datos del dataset

Hola soy nuevo en el foro y estoy comenzando a desarrollar un proyecto con Delphi.
He buscado en foros la manera de conectarme a una base de datos con una consulta sql y poder realizar operaciones matemáticas y lógicas con los datos que me arroje la consulta, es decir el dataset, pero no he encontrado la forma de hacerlo en delphi, estoy conociendo el lenguaje ya que anteriormente lo hacía con asp.net o php.
Agradecería algún ejemplo que me sirva de guia
Responder Con Cita
  #2  
Antiguo 19-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración
Responder Con Cita
  #3  
Antiguo 19-07-2012
Avatar de kapcomx
kapcomx kapcomx is offline
Miembro
 
Registrado: jun 2007
Ubicación: Puebla México
Posts: 350
Poder: 17
kapcomx Va por buen camino
Cool zeos

Si vas a trabajar con MYSQL te recomiendo el uso de Zeos, aunque no se que version de Delphi tengas...
__________________
un tipo al cual la sociedad no le tiene el mas mínimo respeto no puede ser presidente....
Responder Con Cita
  #4  
Antiguo 19-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
Cita:
Empezado por kapcomx Ver Mensaje
Si vas a trabajar con MYSQL te recomiendo el uso de Zeos, aunque no se que version de Delphi tengas...
Todavía no elijo el motor de base de datos, están evaluando el tema de licencias y servidores, por ahora estoy con un prototipo en access y estoy evaluando la versión de prueba de "Embarcadero Rad Studio XE2" para posterior compra de licencia, creo que tiene la ultima versión de delphi
Responder Con Cita
  #5  
Antiguo 19-07-2012
Avatar de kapcomx
kapcomx kapcomx is offline
Miembro
 
Registrado: jun 2007
Ubicación: Puebla México
Posts: 350
Poder: 17
kapcomx Va por buen camino
interbase

Actualmente estoy trabajando con XE2 y nos va muy bien con interbase, aun que te soy sincero casi nunca o no recuerdo haber utilizado Acces con Delphi pero creo que en XE2 viene una paleta de componentes dbgo que tienen los componentes ADO, que son los que pueden conectarte con ACCESS.

Saludos..
__________________
un tipo al cual la sociedad no le tiene el mas mínimo respeto no puede ser presidente....
Responder Con Cita
  #6  
Antiguo 19-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
Cita:
Empezado por kapcomx Ver Mensaje
Actualmente estoy trabajando con XE2 y nos va muy bien con interbase, aun que te soy sincero casi nunca o no recuerdo haber utilizado Acces con Delphi pero creo que en XE2 viene una paleta de componentes dbgo que tienen los componentes ADO, que son los que pueden conectarte con ACCESS.

Saludos..
si lo encontré y me conecto a la base de datos y pude llenar una grilla con datos, pero lo que necesito es hacer una consulta a una tabla y otra consulta a otra tabla con factores, después hacer unas operaciones con las matrices de los dos "dataset". El problema que tengo es que como me sale todo automático, no encuentro la forma de recorrer el dataset con los valores y hacer los cálculos que necesito para después poder mostrarlos en la grilla.
Quiero poder hacer esto por código:
- conectarme a la base de datos
- hacer una consulta sql
- recorrer el dataset con los resultados que me arrojo la consulta
- mostrar en la grilla o de alguna otra forma los datos ya trabajados
Responder Con Cita
  #7  
Antiguo 19-07-2012
Avatar de kapcomx
kapcomx kapcomx is offline
Miembro
 
Registrado: jun 2007
Ubicación: Puebla México
Posts: 350
Poder: 17
kapcomx Va por buen camino
recorrer

Cita:
Empezado por jans.albornoz Ver Mensaje
- recorrer el dataset con los resultados que me arrojo la consulta
ok, si lo que quieres es hacer un recorrido puedes usar un ciclo while

Código Delphi [-]
dataset1.first;
while not (dataset1.eof) do 
begin
variable:= variable + dataset1campox.value; //

dataset1.next; 
end;

y para visualizar los campos puedes usar un stringgrid

Espero te sirva...
__________________
un tipo al cual la sociedad no le tiene el mas mínimo respeto no puede ser presidente....
Responder Con Cita
  #8  
Antiguo 19-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
Cita:
Empezado por kapcomx Ver Mensaje
ok, si lo que quieres es hacer un recorrido puedes usar un ciclo while

Código Delphi [-]
dataset1.first;
while not (dataset1.eof) do 
begin
variable:= variable + dataset1campox.value; //

dataset1.next; 
end;

y para visualizar los campos puedes usar un stringgrid

Espero te sirva...
ok, gracias, lo voy a probar y te cuento si me resulta
Responder Con Cita
  #9  
Antiguo 20-07-2012
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 13
MartinS Va por buen camino
Hola:
Yo hace casi un año que uso Firebird y realmente va muy bien (es excelente y free)
Tenes este tutorial del compañero Caral que te va a servir en cuanto a componentes para la conexion, su configuracion y el acceso a los datos.-

Saludos.-
Responder Con Cita
  #10  
Antiguo 23-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
Cita:
Empezado por MartinS Ver Mensaje
Hola:
Yo hace casi un año que uso Firebird y realmente va muy bien (es excelente y free)
Tenes este tutorial del compañero Caral que te va a servir en cuanto a componentes para la conexion, su configuracion y el acceso a los datos.-

Saludos.-
Gracias por el dato, lo tendré en cuenta, el año pasado estuve haciendo unas pruebas con firebird y se nota un buen motor de base de datos
Responder Con Cita
  #11  
Antiguo 23-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
Cita:
Empezado por kapcomx Ver Mensaje
ok, si lo que quieres es hacer un recorrido puedes usar un ciclo while

Código Delphi [-]
dataset1.first;
while not (dataset1.eof) do 
begin
variable:= variable + dataset1campox.value; //

dataset1.next; 
end;

y para visualizar los campos puedes usar un stringgrid

Espero te sirva...
no me resulta el orden para poder enlazar mi consulta con la conexión y el DataSet.
Como debe ser el orden y la vinculación de estos elementos ya que aca veo que se hace en las propiedades y me pierdo un poco, yo estaba acostumbrado a hacerlo en asp.net donde tenia la conexion, ejecutaba una consulta sql a esa conexion y de eso obtenia un dataset, trato de hacer este orden pero no me resulta.
Responder Con Cita
  #12  
Antiguo 24-07-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por jans.albornoz Ver Mensaje
no me resulta el orden para poder enlazar mi consulta con la conexión y el DataSet.
Como debe ser el orden y la vinculación de estos elementos ya que aca veo que se hace en las propiedades y me pierdo un poco, yo estaba acostumbrado a hacerlo en asp.net donde tenia la conexion, ejecutaba una consulta sql a esa conexion y de eso obtenia un dataset, trato de hacer este orden pero no me resulta.
Hola jans.albornoz.

Revisa este hilo: [ ¿cómo conectar base de datos access con un ado en delphi pasos? ]

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #13  
Antiguo 24-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino

gracias me sirvió bastante, ya tengo conexión =)

Última edición por jans.albornoz fecha: 24-07-2012 a las 03:30:23.
Responder Con Cita
  #14  
Antiguo 24-07-2012
jans.albornoz jans.albornoz is offline
Registrado
NULL
 
Registrado: jul 2012
Posts: 9
Poder: 0
jans.albornoz Va por buen camino
ya encontré solución a mi problema, gracias a todos los que me aportaron con algo. dejo el código por a alguien mas tiene la misma duda

Código Delphi [-]
procedure TForm1.Button3Click(Sender: TObject);
var
suma, cantidad , largo, diametro, numeroTrozos, ritmo, sumaRitmo, sumanumeroTrozos, result : real ;
T, factorRitmo, codigoTrozoAbas, codigoTrozoFac: string;
begin
abastecimiento.Active:=true;
dbgrid1.Visible:=true;
adoquery1.Active:=true;
sumaRitmo := 0;
sumanumeroTrozos := 0;
with abastecimiento do
    begin
       first;
       while not eof do
         begin
         codigoTrozoAbas:= FieldByName('codigoTrozo').AsString;
             cantidad:= FieldByName('cantidad').AsInteger;
             largo:= FieldByName('largo').AsInteger;
             diametro:= FieldByName('diametro').AsInteger ;
             numeroTrozos:= (cantidad * 10000) / (largo * diametro * diametro );
              sumanumeroTrozos:=  sumanumeroTrozos +   numeroTrozos;
             with ADOQuery1 do
                begin
                   first;
                   while not eof do
                      begin
                      codigoTrozoFac := FieldByName('codigoTrozo').AsString;
                        if codigoTrozoAbas = codigoTrozoFac then
                        begin
                        ritmo:= FieldByName('factorRitmo').AsFloat;
                        sumaRitmo:=  sumaRitmo + (ritmo * numeroTrozos);
                       end;

                         next;
                      end;
                end;
             next;
         end;
    end;
    result :=   sumaRitmo /   sumanumeroTrozos;
    factorRitmo:= floattostr(result);
     ListBox1.Items.Add(factorRitmo);
end;
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
Trabajar en Delphi Ayuda llSnakell Varios 3 21-01-2011 11:30:58
Trabajar con DATASET Manualmente rgstuamigo Varios 8 29-12-2008 23:21:49
¿Trabajar con ClientDataSet sin DataSet asociado? Bauhaus1975 Varios 0 14-11-2008 12:54:22
ayuda con dataset Memo6015 Conexión con bases de datos 7 29-09-2008 14:34:19
Ayuda en la creación grupos sin dataset droide01 Impresión 0 03-01-2007 21:00:58


La franja horaria es GMT +2. Ahora son las 00:25:40.


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