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 04-05-2004
Draco Draco is offline
Miembro
 
Registrado: abr 2004
Posts: 12
Poder: 0
Draco Va por buen camino
¿Cómo ejecutar un Query con TADOQuery?

Quisiera me ayudaran en la forma en cómo se anexa un Query a un TADOQuery, cómo se ejecuta y cómo se sacan los resultados generados para pasarlos como parametros a una funcion.

Responder Con Cita
  #2  
Antiguo 04-05-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
No se si te he entendido. Por Query te refieres a una sentencia SQL o a un TQuery?

Bueno, me imagino que lo primero, así que....
El TADOQuery tiene una propiedad SQL de tipo TStrings para ese menester. Puedes ponerlo en diseño o en ejecución, como quieras.

Por otro lado, si es una Query que retorne resultados (Select) tienes el método Open o Active, y si no netorna (Insert, Delete,....) el método ExecSQL

A partir de aquí, lo demás ya es similar a una tabla (TADOTable) para acceder a los valores de los campos (si es una select)

Espero te sirva
Responder Con Cita
  #3  
Antiguo 04-05-2004
Draco Draco is offline
Miembro
 
Registrado: abr 2004
Posts: 12
Poder: 0
Draco Va por buen camino
lo estoy haciendo de la siguiente manera:

Query:='Select Nombre, Cantidad from Producto';
ADOQuery1.Active:=false;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(Query);
ADOQuery1.ExecSQL;
ADOQuery1.Active:=True;

de lo que acabo de hacer me genera los resultados obtenidos, mi pregunta es como saco todos a la vez para mandarlos como parametro a una funcion (y no sacando uno por uno con los campos activos o Fields).

(Lo que pasa es que estoy pasando parametros entre DLL y es muy pesado estar mandando registro por registro de la consulta, por eso quiero saber si puedo mandar todos a la vez)
Responder Con Cita
  #4  
Antiguo 04-05-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cool

Cita:
Empezado por Draco
ADOQuery1.ExecSQL;
ADOQuery1.Active:=True;
Esto no es necesario... quita la linea que tiene el ExecSQL.

Cita:
Empezado por Draco
de lo que acabo de hacer me genera los resultados obtenidos, mi pregunta es como saco todos a la vez para mandarlos como parametro a una funcion (y no sacando uno por uno con los campos activos o Fields).

(Lo que pasa es que estoy pasando parametros entre DLL y es muy pesado estar mandando registro por registro de la consulta, por eso quiero saber si puedo mandar todos a la vez)
Hola. Si la dll la programas también en delphi, podes enviarle el DataSet como parámetro...

Algo como:

Código Delphi [-]
//************** en la dll
Function CualquierCosa(datos : TDataSet);

Begin
  ProcesarLosDatos;
end;

//************** la llamada:

  ....
  ADOQuery1.Active:=True;
  CualquierCosa(AdoQuery1);

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
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


La franja horaria es GMT +2. Ahora son las 10:15:18.


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