PDA

Ver la Versión Completa : pasar parametro


pharaonhx
16-04-2005, 18:06:01
tengo el siguiente query con el query ado

Dm1.QUsuario.Active := False;
Dm1.QUsuario.SQL.Text := 'SELECT * FROM USUARIO WHERE USUARIO =:Us AND PASWORD =:Pas';
Dm1.QUsuario.FieldValues[0].AsString := EditUsuario.Text;
Dm1.QUsuario.FieldByName('Pas').AsString := EditPasword.Text;
Dm1.QUsuario.Active := True;
if Dm1.QUsuario.RecordCount = 0 then
begin
ShowMessage('Este Usuario y Password no Existen');
end
else
begin
frPrincipal := TfrPrincipal.Create(Application);
frPrincipal.ShowModal;
end;

con los edit quiero pasar los parametros al quey para que realice la busqueda
Dm1.QUsuario.FieldValues[0].AsString := EditUsuario.Text;
Dm1.QUsuario.FieldByName('Pas').AsString := EditPasword.Text;

el problema es que no esta la funcion paramsbyname y no se como pasarlos alguien que me ayude

lucasarts_18
16-04-2005, 19:31:16
Hola:

Intenta con parameters, según la ayuda de delphi éste sirve para pasar parametros a las sentencias SQL, con respecto FieldByName es para trabajar con registros especificos de la base de datos.

Saludos.
Aarón.

DaDelphi
16-04-2005, 23:28:38
Prueba de la siguiente manera:

Dm1.QUsuario.Active := False;
Dm1.QUsuario.SQL.Text := 'SELECT * FROM USUARIO WHERE USUARIO =:Us AND PASWORD =:Pas';
Dm1.QUsuario.ParamByName('Us').AsString := EditUsuario.Text;
Dm1.QUsuario.ParamByName('Pas').AsString := EditPasword.Text;
Dm1.QUsuario.Active := True;

Sinonimo
10-05-2006, 19:02:50
Prueba de la siguiente manera:

Dm1.QUsuario.Active := False;
Dm1.QUsuario.SQL.Text := 'SELECT * FROM USUARIO WHERE USUARIO =:Us AND PASWORD =:Pas';
Dm1.QUsuario.ParamByName('Us').AsString := EditUsuario.Text;
Dm1.QUsuario.ParamByName('Pas').AsString := EditPasword.Text;
Dm1.QUsuario.Active := True;

No sé si te funcionó de esta manera, pero a mí no (si estás usando ADO como dices), por lo que te recomiendo otra forma:
Dm1.QUsuario.Parameters.Value := EditUsuario.Text;
Dm1.QUsuario.Parameters.Value := EditPasword.Text;