Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Consulta basica (https://www.clubdelphi.com/foros/showthread.php?t=22954)

Albano 01-07-2005 21:34:58

Consulta basica
 
Hola a todos...

Estoy usando Delphi 7 y una base de datos de access...
Es la primera vez que realizo un programa con bases de datos y todas las cosas que he utilizado las he aprendido aqui, muchas gracias a todos por la ayuda... pero bueno, vamos al punto...
Es tambien la primera vez que utilizo un ADOQuery y estoy batallando para hacer una consulta muy sencilla, ya lei los hilos y no he sabido como hacerlo. Lo que necesito es obtener los registros que tengan un campo igual a lo que escriba en un edit, he tratado con lo siguiente...

Primeramente puse el siguiente texto en la propiedad SQL del Query:
Parameter Num Short;
Select * from Tabla
Where campo = :Num
Order by Fecha
Al dar click a un boton tengo el siguiente codigo:
ADOQuery1.Parameters.ParamValues[Num] := strtoint(Edit1.text);
ADOQuery1.Open;
La variable num la tengo declarada como local en el procedimiento OnClick de tipo string.

Yo se que es algo muy sencillo lo que pido, y que probablemnte todo lo que hice esta mal... primeramente hice una consulta para sacar todos los registros, sin el WHERE ni el PARAMETER, y queda muy bien, es algo muy sencillo, pero aqui me marca el siguiente error:

'ADOQuery1: Parameter "Not found"

Albano 01-07-2005 22:02:51

Ya aprendi ;-)
 
Ya aprendi a hacerlo, lo hice de la siguiente manera:

Al dar click al boton puse el siguiente codigo:
ADOQuery1.Parameters.ParamValues['Num'] := strtoint(edit1.text);
ADOQuery1.Open;

La propiedad SQL del ADOQuery tiene el siguiente texto:
Select * from tabla
where camp = :Num
order by fecha

m@kio 01-07-2005 22:24:06

Tambien prodria ser asi..
 
Código SQL [-]
  Select * from tabla
     where camp = :Num
     order by fecha

Código Delphi [-]
  ADOQuery1.Parameters[0] := strtoint(edit1.text);
     ADOQuery1.Open;

Le indicas el indice del parametro dependiendo de cuantos uses.

lucasarts_18 02-07-2005 04:02:00

Hola:

No olvidar también que el open se usa solo para los select, para los insert,delete y update hay que usar exec.

Saludos.

Aarón.

Albano 02-07-2005 08:24:49

Gracias
 
Muchas gracias por sus tips, los voy a tener en cuenta, tengo mucho que aprender...


La franja horaria es GMT +2. Ahora son las 23:13:27.

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