Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-06-2016
cristian22 cristian22 is offline
Miembro
NULL
 
Registrado: jun 2014
Posts: 18
Poder: 0
cristian22 Va por buen camino
Alta de Nuevo usuario ayuda

Hola buenas tardes estube desarrollando una aplicacion de delphi la cual necesito dar de alta a un nuevo usuario. la aplicacion la desarrolle usando delphi 2010 y componentes query de Zeos para la conexion y consulta a la base de datos de mysql
Bien tengo creado el formulario en el cual dare de alta a los usuarios me funciona bien pero surge un prolema. Quiero restringuir que cuando se de alta a un nuevo usuario si el nombre del mismo esta en uso diga un mensaje que ya es existente para eso utilizo una consulta con un count para que me traiga la cantidad de usuarios existentes y comparar si en dicha cantidad hubo coencidencia, dejo el codigo que desarrolle.



Código Delphi [-]
begin
fModulo.qCuentasAux.close;
fModulo.qCuentasAux.SQL.clear;
fModulo.qCuentasAux.SQL.Text:= 'select count(*) as Cantidad from cuentas where cuentas.usuario ='+quotedstr(eUsuario.Text);

   fmodulo.qCuentasAux.Prepare;
 fModulo.qCuentasAux.Open;
 if not fmodulo.qCuentasAux.IsEmpty then
 begin
   if fmodulo.qCuentasAux.FieldByName('Cantidad').AsInteger=0 then
   begin
   fModulo.qCuentas.ParamByName('usuario').Value:= eUsuario.Text;
fModulo.qCuentas.ParamByName('contrasenia').Value:= eContrasenia.Text;
     fmodulo.qCuentas.Post;
     fmodulo.qCuentas.Close;
   end;  
 end
  else
  showmessage('Usuario Existente');
end;
end;

desde ya muchas gracias
Responder Con Cita
  #2  
Antiguo 13-06-2016
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.267
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Hola y bienvenido a los foros.

Antes de nada, comentar que no dices nada del problema o error que tienes. Has explicado lo que necesitas, has puesto el código, pero te falta la pregunta.

Estás comprobando cosas por duplicado, ya que si el nombre del usuario es clave y no se puede repetir, el IsEmpty y preguntar si ha encontrado alguno (Cantidad > 0) son redundantes, De todas formas, eso no te debería hacer fallar nada.

Por otro lado, si no existe el usuario, a la hora de insretarlo, estás utilizando código que mezcla, inserción normal, con inserción SQL.
No veo que SQL tienes en fModulo.qCuentas.

Si es algo como esto...

Código SQL [-]
INSERT INTO USUARIOS (usuario, contrasenia) VALUES (':usuario, :contrasenia')

En lugar del Post, prueba a realizar un Exec o ExecSQL (o similar dependiendo delos componentes que uses).

Código Delphi [-]
if vfmodulo.qCuentasAux.FieldByName('Cantidad').AsInteger=0 then begin     
   fModulo.qCuentas.ParamByName('usuario').Value:= eUsuario.Text;
   fModulo.qCuentas.ParamByName('contrasenia').Value:= eContrasenia.Text;

   fModulo.qCuentas.Exec;
  o
   fModulo.qCuentas.ExecSQL; 

   fmodulo.qCuentas.Close;
end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Nuevo usuario Premium Casimiro Notevi Noticias 26 24-12-2012 07:18:52
nuevo How To. Configurando un servidor de alta disponibilidad con fedora poliburro Noticias 5 05-03-2008 13:20:11
Como envio un correo cuando se da de alta un nuevo registro solnaciente Internet 2 08-09-2006 15:06:03


La franja horaria es GMT +2. Ahora son las 08:31:16.


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