Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-11-2008
Avatar de bigpeter80
bigpeter80 bigpeter80 is offline
Miembro
 
Registrado: nov 2008
Posts: 11
Poder: 0
bigpeter80 Va por buen camino
Evitar guardar datos duplicados

Hola a todos... soy nuevo y necesito ayuda...
Tengo un formulario donde ingreso datos de un cliente... x dni, apellido, nombre, etc.. guardo los registros y todo ok... pero cuando creo un cliente nuevo, uno que ya habia ingresado antesme permite guardar igual... como hago para que no guarde un registro duplicado..

Muchas gracias x su ayuda desde ya...
Responder Con Cita
  #2  
Antiguo 20-11-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Bienvenido a Clubdelphi , en cuanto tengas un ratito, léete la Guía de estilo, verás que faltan datos para responder.

usas bases de datos ¿cual?
que componentes usas para acceder a la base de datos, BDE (ttable, tquery, etc) ADO (TADOTable, ...) IBX (TIBTable).

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #3  
Antiguo 20-11-2008
lKinGl lKinGl is offline
Miembro
 
Registrado: ago 2007
Posts: 333
Poder: 17
lKinGl Va por buen camino
Talking

Salu2 bigpeter80

para lograr lo que quieres se hace asi:

Código Delphi [-]
With Tutabla do
  begin
    if Locate('dni',campoclavedelformulario,[]) then
      Begin
        application.MessageBox('Este Dni ya fué registrado','');
      End
      else
      Begin
        //Proceso de Registrar
      End;
  end;

prueba y nos comentas como te fue
__________________
Las cosas o son, o no son...
Responder Con Cita
  #4  
Antiguo 20-11-2008
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.275
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
Cita:
Empezado por lKinGl Ver Mensaje
para lograr lo que quieres se hace asi:
Es una solución que funciona, pero antes que esta yo optaría por añadir claves primarias y/o índices únicos para evitar duplicados en las tablas.
__________________
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
  #5  
Antiguo 20-11-2008
lKinGl lKinGl is offline
Miembro
 
Registrado: ago 2007
Posts: 333
Poder: 17
lKinGl Va por buen camino
Wink

si pero sino me equivoco dni es un número de identificacion, por lo tanto 2 personas no tendrán el mismo dni
__________________
Las cosas o son, o no son...
Responder Con Cita
  #6  
Antiguo 20-11-2008
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.275
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
Cita:
Empezado por lKinGl Ver Mensaje
si pero sino me equivoco dni es un número de identificacion, por lo tanto 2 personas no tendrán el mismo dni
Correcto, por eso se define el DNI como clave primaria, o si se necesita otra clave primaria, se le define al DNI un índice único. De esta forma al hacer el INSERT si ese DNI ya existe fallará. Si se captura el error adecuadamente se puede sacar el mismo mensaje que tú comentabas sin necesidad de hacer una búsqueda previa a la inserción.
__________________
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
  #7  
Antiguo 20-11-2008
cahp cahp is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 90
Poder: 21
cahp Va por buen camino
Cita:
Empezado por lKinGl Ver Mensaje
si pero sino me equivoco dni es un número de identificacion, por lo tanto 2 personas no tendrán el mismo dni
Hola a todos,

dos personas no pueden tener el mismo dni, pero dos clientes si, me explico, uno puede ser cliente como persona fisica y no paga por ejemplo RE y el mismo puede ser profesional autonomo y si pagar RE o retenciones, con lo cual para una misma empresa si que pueden haber dos dni con distintas condiciones de venta es decir dos cliente distintos.

Con lo que poner el DNI como clave primaria, no lo aconsejo.

saludos.
Responder Con Cita
  #8  
Antiguo 20-11-2008
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.275
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
Como bien ha dicho Lepe:

Cita:
Empezado por Lepe Ver Mensaje
usas bases de datos ¿cual?
que componentes usas para acceder a la base de datos, BDE (ttable, tquery, etc) ADO (TADOTable, ...) IBX (TIBTable).

Sabiendo esa información se puede afinar un poco más. Si saber la Base de datos y el método de conexión no se puede.
__________________
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



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
Guardar datos en Base de Datos MySQL knnibal Conexión con bases de datos 6 23-06-2011 15:36:42
sugerencia para evitar clientes duplicados Patricio Varios 2 06-11-2008 18:54:00
Guardar en 1 base de datos SQL, datos procedentes de 2 tablas distintas adaypr C++ Builder 1 05-09-2006 11:56:33
Borrar datos duplicados Sr.Scorpion Conexión con bases de datos 4 20-06-2005 19:52:57
Evitar duplicados hectorin Conexión con bases de datos 2 29-10-2004 16:37:25


La franja horaria es GMT +2. Ahora son las 22:37:56.


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