Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-12-2010
Master23 Master23 is offline
Miembro
 
Registrado: feb 2010
Posts: 113
Poder: 15
Master23 Va por buen camino
¿Cómo se usa el componente Query de delphi?

Quiero saber cómo se usa este componente por que aveces veo que algunas personas realizan la consulta y luego ejecutan un execsql o algo así y otros usan un open etc,las propiedades más comunmente usadas y como funcionan, gracias de antemano.
Responder Con Cita
  #2  
Antiguo 29-12-2010
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola Master23, creo que viendo los ejemplos que puedes encontrar en los centenares de hilos es más que suficiente como para entenderlos.

Te recuerdo además que si bien todos los Querys tienen el mismo principio básico y estructura común... existen diferencias sutiles (o no, depende del caso) entre un TQuery, TADOQuery, TIBQuery, entre otros.

Dependiendo de la suite de componentes que elijas hay algunas cosas varían, deberías aclarar con cual trabajas... ¿ADO? ¿DBE? ¿IBX? ¿Zeos? ¿DBX?

Por mi parte trataré de ser lo más directo y simple posible:

El método .Open se utiliza cuando la instrucción SQL a ejecutar debe regresar registros, como un SELECT. Por su parte .ExeqSql se emplea cuando la instrucción NO debe regresar registros, como un UPDATE o INSERT.

Todo dataset (incluídos) los diferentes querys tienen los siguientes métodos para desplazarse por los registros: First, Prior, Next y Last. Sus nombres son bastante descriptivos lo que hacen es colocarse en el primer, anterior, siguiente, y último registro respectivamente. Por ejemplo si quisiéramos movernos por todos los registros (desde el principio hacia el final) de una consulta SELECT haríamos algo como:

Código Delphi [-]
MiQuery.First;
while NOT MiQuery.Eof do
begin
  // lo que debamos hacer con el registro activo
  MiQuery.Next;
end;

Lo que se hizo es:
1) Movernos al principio
2) Trabajamos con el registro
3) Nos movemos al siguiente
Se repite 2 y 3 hasta haber llegado al final (el último)

Notarás que en el ejemplo en el ciclo while hay un .Eof. Los Querys tienen un método .Eof que significa "End of File". Básicamente este método regresa un valor true o false dependiendo si el registro activo es el último del dataset o no.

Después está el manejo de los campos. Esto se procede de igual manera que con cualquier componente Table.

Está la propiedad Fields[] que permite acceder a un campo por su índice:

Código Delphi [-]
MiQuery.Fields[5].AsFloat := 123.456789;
En el ejemplo, se pasa al campo 6to (está basado en índice 0. Es decir el primer campo corresponde a 0, el 2do es 1, etc) del registro activo el valor 123.456789.

También se puede acceder al campo mediante su nombre:

Código Delphi [-]
saldo := MiQuery.FieldByName('Saldo').AsFloat;

En este caso se está leyendo del registro activo el campo Saldo.

Si deseas saber la cantidad de campos tiene la propiedad FieldCount.

Después está el manejo de los parámetros. Esto se procede de forma similar que con los campos. En el caso de ADO para acceder a ellos se debe emplear la propiedad Parameters mientras que otras suites trabajan con Params.

Creo que este breve pero introductorio "tutorial" te puede dar pie para comenzar.

Déjame decirte antes de terminar, que te regañe un poco. Esto ya se dijo y se habló centenares de veces en el foro. Deberías buscar primero, o quizá buscar mejor.

Si luego tienes alguna duda puntual o problemas puedes exponerlos en los foros y de allí te vamos guiando. No esperes que se te hable de todo sobre un componente... eso es tarea personal Te invito a que coloques el query en el form o datamodule y mientras esté "seleccionado" presiones F1. Eso bastará para acceder a la ayuda sobre el componente.

Todo lo que dije, y más está en la ayuda. Hay que leerla.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 29-12-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y para complementar el magnífico comentario de Delphius... aquí tienes un estupendo libro, es gratis, y está todo muy bien explicado.
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
como se instala un componente en delphi 7 kurono Varios 6 04-03-2008 06:46:09
componente query con mysql edr_tuc Conexión con bases de datos 3 11-01-2008 02:01:22
Como hacer referencia a un query dentro de otro query? JuanBCT SQL 2 05-09-2006 18:35:25
Problema Con el Componente Query!!!! Ivelisse_085 Conexión con bases de datos 0 19-08-2006 23:29:21
Como ejecutar un query de Access en Delphi tayra SQL 10 14-09-2004 09:34:21


La franja horaria es GMT +2. Ahora son las 21:51:52.


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