Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Adoquery1.parameters Socorro!!!! (https://www.clubdelphi.com/foros/showthread.php?t=3992)

taita 26-09-2003 19:44:35

Adoquery1.parameters Socorro!!!!
 
Un saludo o atodos los usuarios del foro:

Estoy intentando hace una consulta en la que primero he de seleccionar en un DBLookupComboBox un determinado tipo de 'Familia' y una vez seleccionado, se ha de realizar una segunda consulta con la que mostraré la información en un grid.

lo que estoy haciendo ahora es esto:

procedure TfrmConsultaArticulos.DBLookupComboBox1Click(Sender: TObject);
begin
ConsultaBase.Active:=false;
ConsultaBase.SQL.Clear;
ConsultaBase.SQL.Add('Select * from articulos where CODFAM:=CODIGO');
ConsultaBase.parameters.ParamByName('CODIGO').value:=DBLookupComboBox1.keyvalue;
ConsultaBase.Open;
ConsultaBase.Active:=true;

end;

El problema viene ahora ya que me dice lo siguiente:
"ConsultaBase: Parameter 'CODIGO' not found."

Qué debo hacer? tengo que crear el parámetro? asi?
ConsultaBase.Parameters.CreateParameter('CODIGO',ftInteger,pdInput,10,1);

tanto CODFAM como CODIGO son Integers.

Si alguien sabe cómo resolver este enigma, please. Retribuiré con flores...

PD: Me olvidaba!!! la base de datos está en Access (asi que la conexión está hecha en ADO)

Viet 26-09-2003 20:12:33

Bienvenido al foro !

En principio veo que tienes mal la query, va en realidad estan mal los ":" esta tendria que ser
Código:

'Select * from articulos where CODFAM=:CODIGO'
No hace falta que crees el paramedro. asi tendria que funcionar.

De todos modos no entiendo por que no lo haces asi:

Código:


ConsultaBase.Close;
ConsultaBase.SQL.Text := 'Select * from articulos where CODFAM=' + inttostr(DBLookupComboBox1.keyvalue);
ConsultaBase.Open;

si anda me mandas las flores jejejejeje :D :p

taita 27-09-2003 12:00:20

Gracias Viet.

Como bien has dicho tú, para qué matarme. Había pensado en todas las soluciones posibles menos esa.
Funciona a la perfección, asi que como lo prometido es deuda, aqui van tus flores.



Un saludo y hasta la próxima.
Gracias de nuevo.


La franja horaria es GMT +2. Ahora son las 17:05:33.

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