Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #20  
Antiguo 26-01-2015
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Poder: 23
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Notas para hacer un poco mas legible tu código:

Cada línea empieza por "Dmodulo."
Esto sugiere que todo este procedimiento debería ser parte del DataModule y no de Form que lo llama.

Código Delphi [-]
begin
   DModulo.InsertarEnMySQL;
end;

proceudre  TDModulo.InsertarEnMySQL;
begin
RegistroMadre2.SQL.Clear ;
RegistroMadre2.SQL.Add('select * from RegistroMadre ');
RegistroMadre2.Open;

RegistroMadre2.First;
       while not RegistroMadre2.Eof do
             begin

                 if RegistroMadre2.FieldByName('NumeroCuenta').AsString>'' then

                 begin
                     Dias_M_I.SQL.Text:=Dias_M_I.InsertSQL.Text;
                     Dias_M_I.ParamByName('CEDULA').AsString:=RegistroMadre2.FieldByName('Cedula').AsString;
                     Dias_M_I.ExecSQL;
                     Dias_M_I.SelectSQL.Text:=('select * from RegistroMadre ');
                     SHOWMESSAGE('A sido Insertado');
                 end;
       RegistroMadre2.Next;
       end;
       ibt.Commit;
end;

Luego además podrías utilizar "with do" para mejorarlo incluso un poco mas:

Código Delphi [-]
proceudre  TDModulo.InsertarEnMySQL;
begin
with RegistroMadre2 do
begin
   SQL.Clear ;
   SQL.Add('select * from RegistroMadre ');
   Open;
   First;
       while not Eof do
             begin
                 if FieldByName('NumeroCuenta').AsString>'' then
                 begin
                     Dias_M_I.SQL.Text:=Dias_M_I.InsertSQL.Text;
                     Dias_M_I.ParamByName('CEDULA').AsString:=FieldByName('Cedula').AsString;
                     Dias_M_I.ExecSQL;
                     Dias_M_I.SelectSQL.Text:=('select * from RegistroMadre ');
                     SHOWMESSAGE('A sido Insertado');
                 end;
       Next;
       end;
       ibt.Commit;
   end;
end;

Supongo además que la sentencia InsertSQL de la tabla DIAS_M_I necesitará más parámetros.
Algo así como "INSERT INTO REGISTRO HIJO (ID, NOMBRE, CEDULA) VALUES (:ID, :NOMBRE, :CEDULA)"
Esos parámetros también deberás asignarlos, o se insertarán como nulos o "vacíos".
Responder Con Cita
 


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
error al restauarar una bases de datos en ibexpert alexglez1255 Firebird e Interbase 9 21-03-2014 00:56:13
error al crear base de datos en ibexpert martita Firebird e Interbase 9 10-06-2011 23:56:40
tipos de datos en ibexpert omitraz Conexión con bases de datos 9 24-06-2010 19:36:00
Error al crear base de datos con IBExpert pepitu Firebird e Interbase 3 04-12-2007 18:16:22
como pasar informacion de ibexpert a access Nelly Varios 1 05-04-2006 09:38:51


La franja horaria es GMT +2. Ahora son las 21:53:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi