Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-06-2011
rrosariom rrosariom is offline
Miembro
 
Registrado: abr 2007
Posts: 23
Poder: 0
rrosariom Va por buen camino
Control de Acceso a una aplicacion

este es el codigo que tengo actualmente:

Código Delphi [-]
 form2.adoquery1.Close;
form2.adoquery1.sql.Clear;
form2.adoquery1.SQL.Add('select username,password FROM DBA_USERS');
form2.adoquery1.SQL.Add('where username = :usuario');
form2.adoquery1.SQL.Add('or password = :clave');
form2.adoquery1.FieldByName('usuario').AsString := dbedit1.Text;
form2.adoquery1.FieldByName('clave').AsString := dbedit2.Text;
form2.adoquery1.Open;
form2.adoquery1.Last;
if form2.adoquery1.RecordCount <> 0
then
  form1.showmodal
else
  showmessage ('Usuario O PassWord Invalido');
  end;

y me presenta el siguiente error:

AdoQuery1:Field'usuario' not found'


Me faltara declarar algo?

Última edición por ecfisa fecha: 21-06-2011 a las 04:18:44. Razón: Etiquetas [DELPHI] [/DELPHI]
Responder Con Cita
  #2  
Antiguo 16-06-2011
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

El error es que estás usando FieldByName cuando deberías usar ParamByName.


Saludos...
__________________
Lee la Guía de Estilo antes que cualquier cosa. - Twitter
Responder Con Cita
  #3  
Antiguo 16-06-2011
rrosariom rrosariom is offline
Miembro
 
Registrado: abr 2007
Posts: 23
Poder: 0
rrosariom Va por buen camino
Error Para crear control de acceso a una aplicacion

Cuando lo uso asi:

form2.adoquery1.Parameters.ParamByName('usuario').AsString := dbedit1.Text;


me da el error de que el AsString no esta declarado (undeclared identified:AsString) , por en realidad lo reconoce como sigue:


form2.adoquery1.Parameters.ParamByName('usuario').value.AsString := dbedit1.Text;

porque no se le puede pasar ni el parambyname directamente al adoquery, debido a que lleva parameters primero (adoquery1.parameters.parambyname...)

Mientras en el caso del AsSring tampoco, puesto que primero hay que pasarle el .value.AsString...


Un Saludo,
Rolando.
Responder Con Cita
  #4  
Antiguo 16-06-2011
rrosariom rrosariom is offline
Miembro
 
Registrado: abr 2007
Posts: 23
Poder: 0
rrosariom Va por buen camino
Actualmente, teniendo el codigo como sigue:

Código Delphi [-]
form2.adoquery1.Close;
form2.adoquery1.sql.Clear;
form2.adoquery1.SQL.Add('select username,password FROM DBA_USERS');
form2.adoquery1.SQL.Add('where username = :usuario');
form2.adoquery1.SQL.Add('or password = :clave');
form2.adoquery1.Parameters.ParamByName('usuario').value.AsString := dbedit1.Text;
form2.adoquery1.Parameters.ParamByName('clave').Value.AsString := dbedit2.Text;
form2.adoquery1.Open;
form2.adoquery1.Last;
if form2.adoquery1.RecordCount <> 0
then
  form1.showmodal
else
  showmessage ('Usuario O PassWord Invalido');
  end;
me muestra el siguiente error:

Invalid variant operation

es bueno decir que este codigo compila bien, es cuando presiono el boton que me devuelve el error.

Un Saludo,
Rolando.

Última edición por ecfisa fecha: 21-06-2011 a las 04:18:53. Razón: Etiquetas [DELPHI] [/DELPHI]
Responder Con Cita
  #5  
Antiguo 16-06-2011
leofuentes21 leofuentes21 is offline
Miembro
NULL
 
Registrado: feb 2011
Ubicación: la ceiba, atlantida
Posts: 66
Poder: 14
leofuentes21 Va por buen camino
hola a rrosariom prueva asi a ver k tal

Código Delphi [-]
form2.adoquery1.Close;
form2.adoquery1.sql.Clear;
form2.adoquery1.SQL.Add('select username,password FROM DBA_USERS');
form2.adoquery1.SQL.Add('where username = :usuario');
form2.adoquery1.SQL.Add('or password = :clave');
form2.adoquery1.Parameters.ParamByName('usuario').AsString := dbedit1.Text;
form2.adoquery1.Parameters.ParamByName('clave').AsString := dbedit2.Text;
form2.adoquery1.Open;
form2.adoquery1.Last;
if form2.adoquery1.RecordCount <> 0
then
  form1.showmodal
else
  showmessage ('Usuario O PassWord Invalido');
  end;

Última edición por leofuentes21 fecha: 16-06-2011 a las 16:09:44.
Responder Con Cita
  #6  
Antiguo 16-06-2011
Avatar de oesqueda
oesqueda oesqueda is offline
Miembro
 
Registrado: dic 2007
Ubicación: Guadalajara, Mexico
Posts: 66
Poder: 17
oesqueda Va por buen camino
Fe de erratas

Código Delphi [-]
form2.adoquery1.Parameters.ParamByName('usuario').Value := dbedit1.Text; form2.adoquery1.Parameters.ParamByName('clave').Value := dbedit2.Text; form2.adoquery1.Open; if form2.adoquery1.RecordCount <> 0 then   form1.showmodal else   showmessage ('Usuario O PassWord Invalido');

Es .VALUE
__________________
OEsqueda
Responder Con Cita
  #7  
Antiguo 16-06-2011
rrosariom rrosariom is offline
Miembro
 
Registrado: abr 2007
Posts: 23
Poder: 0
rrosariom Va por buen camino
Exclamation Hola OSqueda

Me continua dando error.

Lo que no quiero es tener que utilizar la mala practica de utilizar este procedimeinto por codigo. Queria hacerlo, donde se pudiera dar mantenimiento de usuarios, es decir, crear, modificar, eliminar o bloquear, y que al acceder solo era cuestion de una consulta, y si el registro existe (es decir el usuario) entonces cargue un menu principal, y que segun su perfil, entonces se le habilite o habiliten las opciones del menu que debe utilizar.

Pero se ha complicado, algo que no se ve dificil, pero bueno, continuamos en la noche, tengo que irme a trabajar ahora. De todas formas, si usted pudiera hacer una prueba con esto, y ver si es que falta algo mas.


Un Saludo,
Rolando.
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
cambiar password del usuario sysdba walace_soy Firebird e Interbase 27 23-06-2015 09:39:18
acceder a carpeta remota con password chinchan C++ Builder 2 12-04-2011 13:33:59
validar dos campos (password y usuario) Yessy OOP 18 28-07-2006 21:59:15
Usuario y Password con TQuery en MyODBC mutant09 Conexión con bases de datos 9 23-04-2004 19:19:04
Dar Master Password a Paradox para que no lo haga el usuario nefy Conexión con bases de datos 3 03-01-2004 19:01:30


La franja horaria es GMT +2. Ahora son las 20:52:49.


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