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 13-03-2007
moyo18 moyo18 is offline
Miembro
 
Registrado: mar 2007
Posts: 11
Poder: 0
moyo18 Va por buen camino
encontrar datos en la tabla

bueno al querer guardar nuevos datos en la tabla pero no quiero q se guarden repetidos entonces antes q se guarden q haga una busqueda y q si esta repetido q sala un mensaje q esta repetido y q no se puede guardar, y q si no lo esta q se guarde.

hasta el momento tengo un pedazo d codigo pero el problema es q siempre me sale el mensaje q esta repetido, asi q no lo peudo guardar, alguien me puee ayudar

Código Delphi [-]
procedure TForm1.Button3Click(Sender: TObject);
var
field: string;
texto: string;
begin
 field:='userID'  ;
 texto:=DBEdit2.Text;
 if ADOTable1.Locate(field,texto,[]) then
  begin
   showmessage('DATO YA  EXISTE');
  end
 else
  begin
   Maskedit1.visible := false;
   Maskedit2.visible := false;
   Maskedit3.visible := false;
   Maskedit4.visible := false;
   ADOTable1.Edit;
    DBEdit9.text := Pri;
    DBEdit2.text := Maskedit1.Text ;
    DBEdit6.text := Maskedit2.Text ;
    DBEdit8.text := Maskedit3.Text ;
    DBEdit10.text := Maskedit4.Text ;
    ADOTable1UserID.AsString := DBEdit2.text;
    ADOTable1LastName.AsString := DBEdit3.text;
    ADOTable1Name.AsString := DBEdit4.text;
    ADOTable1Address.AsString := DBEdit5.text;
    ADOTable1PostalCode.AsString := DBEdit6.text;
    ADOTable1City.AsString := DBEdit7.text;
    ADOTable1Phone.AsString := DBEdit8.text;
    ADOTable1Email.AsString := DBEdit9.text;
    ADOTable1Birthday.AsString := DBEdit10.text;
   ADOTable1.Post;

   DBEdit3.Text := '' ;
   DBEdit4.Text := '' ;
   DBEdit5.Text := '' ;
   DBEdit7.Text := '' ;
   DBEdit9.Text := '' ;
   Maskedit1.Text := '' ;
   Maskedit2.Text := '' ;
   Maskedit3.Text := '';
   Maskedit4.Text := '' ;
   combobox2.visible := false;


  end;
end;
Responder Con Cita
  #2  
Antiguo 13-03-2007
Avatar de white_zombie
[white_zombie] white_zombie is offline
Miembro Premium
 
Registrado: nov 2005
Ubicación: Zaragoza - España
Posts: 187
Poder: 19
white_zombie Va por buen camino
Hola, mira este codigo, los valores nuevos los meto a traves de dos edit. Primero busco si las entradas ya existen, si es asi muestro un mensaje y si no inserto los nuevos valores.

Código Delphi [-]
if not ClientDataSet1.Locate('nombre',frame41.Edit1.Text,[loCaseInsensitive]) and not ClientDataSet1.Locate('ip',frame41.Edit2.Text,[loCaseInsensitive]) then    // comprueba que no se repiten entradas y las salva
  begin
    ClientDataSet1.Insert;
    ClientDataSet1.FieldByName('nombre').AsString:= frame41.Edit1.Text;
    ClientDataSet1.FieldByName('ip').AsString:= frame41.Edit2.Text;
    ClientDataSet1.ApplyUpdates(0);
    ClientDataSet1.Active:=false;
    ClientDataSet1.Active:=true;

  end

else
  begin
    if ClientDataSet1.Locate('nombre',frame41.Edit1.Text,[loCaseInsensitive]) then    //mensaje advirtiendo que una entrada se repite
      begin
        showmessage('El nombre ya existe en la base de datos');
      end;;
    if ClientDataSet1.Locate('ip',frame41.Edit2.Text,[loCaseInsensitive]) then
      begin
        showmessage('La ip ya existe en la base de datos');
      end;
  end;
Responder Con Cita
  #3  
Antiguo 13-03-2007
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.278
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 moyo18
bueno al querer guardar nuevos datos en la tabla pero no quiero q se guarden repetidos entonces antes q se guarden q haga una busqueda y q si esta repetido q sala un mensaje q esta repetido y q no se puede guardar, y q si no lo esta q se guarde.
Te recomiendo que antes de continuar revises documentación sobre Claves primarias e índices únicos en la Base de Datos.
Básicamente podrás hacer lo que necesitas sin necesidad de escribir todo este código; la Base de Datos hará esa comprobación por tí, será mucho más rápido, eficiente y seguro.
__________________
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
ingresar datos en una tabla de otra tabla ajum Tablas planas 5 14-07-2007 19:56:20
Actualizar un campo de una tabla con datos que se encuentran en otra tabla Morphine SQL 4 15-12-2006 22:47:42
Dbgrid para insertar en una tabla pero cogiendo datos de otra tabla taru MySQL 1 27-07-2006 15:36:12
insert a una tabla de otra tabla mas datos gmontes SQL 3 16-10-2004 17:04:51
Como insertar datos de una tabla en otra tabla? Salomon Firebird e Interbase 1 28-08-2003 11:29:40


La franja horaria es GMT +2. Ahora son las 20:41:28.


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