Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   ayuda con declaracion de parametro (https://www.clubdelphi.com/foros/showthread.php?t=66743)

microbiano 10-03-2010 06:39:29

ayuda con declaracion de parametro
 
hola tengo el siguiente codigo.
Código Delphi [-]
procedure TForm1.BaceptarClick(Sender: TObject);
var wusuario,wcontrasena: string;
begin
if trim(txtusuario.Text)='' then
 begin
   Application.MessageBox('Nombre de Usuario','Error',MB_ICONSTOP);
   txtusuario.SetFocus;
   Exit;
 end;
 if trim(txtcontra.Text)='' then
  begin
    Application.MessageBox('contraseña para el usuario','Error',mb_iconstop);
    txtcontra.SetFocus;
    exit;
  end;
  wusuario:=trim(txtusuario.Text);
  wcontrasena:=trim(txtcontra.Text);
  //valido que el usuario y contraseña existan en la base de datos
 with fmodul.Query_val_usuario do
  begin
    //SQL.Clear;
    SQL.Add ('select nombre,contra from usuario');
    SQL.Add ('WHERE nombre=:us');
    {SQL.Add('AND .NumRecibo = 810375');}
    Parameters.ParamByName('us').Value := wusuario;
    ExecSQL;
  end;

end;

sin embargo a ejecutar la consulta me uestra el siguiente error:

Código Delphi [-]
project fallo.exe raised exception class EDatabaseError With Message 'Query_val_usuario: Parameter 'us'
not Found'. Process Stoped. Use Step or run to continue

alguien tiene una idea del por que me dice que el parametro no es encontrado?

muchas gracias

ElKurgan 10-03-2010 07:35:45

Cita:

Empezado por microbiano (Mensaje 356344)

Código Delphi [-]
with fmodul.Query_val_usuario do
begin
//SQL.Clear;
 
SQL.Add ('select nombre,contra from usuario');
SQL.Add ('WHERE nombre=:us');
{SQL.Add('AND .NumRecibo = 810375');}
Parameters.ParamByName('us').Value := wusuario;
ExecSQL;
end;
Sin embargo a ejecutar la consulta me uestra el siguiente error:


Código Delphi [-]
project fallo.exe raised exception class EDatabaseError With Message 'Query_val_usuario: Parameter 'us'
not Found'. Process Stoped. Use Step or run to continue

alguien tiene una idea del por que me dice que el parametro no es encontrado?

Hombre, aparentemente el parámetro no existe en el objeto fmodul.Query_val_usuario

Si no lo has definido en el componente deberías añadirlo en ejecución con la instrucción CreateParam antes de darle algún valor

Un saludo

defcon1_es 10-03-2010 11:16:37

Hola.
Creo que el fallo está en la línea que he entrecomentado:
Código Delphi [-]
 with fmodul.Query_val_usuario do
  begin
    Close;
    SQL.Clear;
    SQL.Add ('select nombre,contra from usuario');
    SQL.Add ('WHERE nombre=:us');
//    Parameters.ParamByName('us').Value := wusuario;
    ParamByName('us').Value := wusuario;    
    ExecSQL;
  end;

microbiano 10-03-2010 23:08:45

solucionado
 
hola que error he cometido, ya esta solucionado el problema era que no le habia pasado el nombre de la conecion al Adoquery.

aun asi muchas gracias por su ayuda.


La franja horaria es GMT +2. Ahora son las 01:01:03.

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