Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-12-2011
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 14
MartinS Va por buen camino
Insercion masiva desde Paradox a Firebird

Hola gente...!!!
Tengo un pequeño gran problema. La idea es migrar una base de datos que se encuentra en Paradox a Firebird la que posee alrededor de 6500 socios. Hasta aqui todo bien, el tema es que esta base paradox tiene la foto de cada socio y por ende tarda una eternidad en pasar todos los datos. La pregunta es la siguiente: ¿Existe alguna forma de hacer una instruccion SQL o que componentes usar para insertar datos en forma masiva a firebird y que incluya una base de datos Paradox entre sus parametros?. No se si me explicado correctamente. Saludos
Responder Con Cita
  #2  
Antiguo 21-12-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.264
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No, no te has explicado correctamente

Por ejemplo:
Cita:
Empezado por MartinS
el tema es que esta base paradox tiene la foto de cada socio y por ende tarda una eternidad en pasar todos los datos
Qué tiene que ver el que tenga una foto con el que sea lento.

¿Y esa foto está dentro de la BD o está fuera como enlace?
Responder Con Cita
  #3  
Antiguo 22-12-2011
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 14
MartinS Va por buen camino
Ups . La foto esta dentro de la base. El tema es que para realizar la migracion (si no existe otra forma) es ir recorriendo la tabla de paradox y enviando uno a uno a Firebird pero los primeros 15 o 20 los hace bien y de ahi en adelante cada vez peor. Temo que no va a terminar
Responder Con Cita
  #4  
Antiguo 22-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Martín.

Sería bueno, para poder dar una mejor opinión, ver en líneas generales el código que utilizas para realizar el pasaje de datos.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 22-12-2011
MartinS MartinS is offline
Miembro
NULL
 
Registrado: nov 2011
Ubicación: Villa Cacique - Argentina
Posts: 283
Poder: 14
MartinS Va por buen camino
Hola Ecfisa:

El codigo que utilizo para hacer el paso de datos es el siguiente:
InterPres es la tabla paradox
IbSocios es la tabla firebird


Código Delphi [-]
  ProgressBar1.Max := InterPres.RecordCount; 
  InterPres.First;
  while Not InterPres.Eof do
  Begin
    Inc(i);
    ProgressBar1.Position := I;
    Application.ProcessMessages;
    IBSocios.Append;
    IBSociosID.AsInteger := InterPresId.AsInteger;
    IBSociosAPELLIDOS.AsString := InterPresApellidos.AsString;
    IBSociosNOMBRES.AsString := InterPresNombres.AsString;
    IbSociosFoto.Value := InterPresFoto.Value;
    ...
    ...
    IbSocios.Post;
    InterPres.Next;
  end;


Despues del final de InterPres hago el commit y tambien probe hacerlo cada 100 pero el resultado sigue siendo el mismo.

Luego descubri que la foto era lo que realmente hacia todo lento, asi que elimine esa instruccion del codigo anterior para cargar la base firebird y lo hizo bastante bien.
Ahora habia que agregarles la foto y utilice esto:


Código Delphi [-]
  InterPres.First;
  while Not InterPres.Eof do
  Begin
    Indice := InterPresId.AsInteger;
    IBSocios.Locate('Id',Indice,[]);
    IBSocios.Edit;
    IBSociosFOTO.Value := InterPresFoto.Value;
    IBSocios.Post;
    InterPres.Next;
  End;


Tambien lo hice mediante SQL con Update table pero no he logrado resultados.

Como he expresado en el mensaje anterior no seria problema que tarde 2 o 3 horas en hacerlo ya que seria una vez y nunca mas pero tengo mis dudas si va a terminar de pasar los 6500 o explotara la memoria en el intento

Gracias por las respuestas.


A modo de referencia: Ecfisa: nos separan solo 150 km de distancia... yo en villa cacique (pdo Benito Juarez)
Responder Con Cita
  #6  
Antiguo 22-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
A modo de referencia: Ecfisa: nos separan solo 150 km de distancia... yo en villa cacique (pdo Benito Juarez)
¡ Mirá vós !, Me hacía a Villa Cacique más al sur. No sé, me lo imaginaba en Rio Negro... queda claro que la geografía no es mi fuerte

Pero si estamos a un paso... ahora mismo lo voy a ubicar en el partido de B. Juarez para desasnarme.

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
insercion masiva Alfredo Firebird e Interbase 3 12-11-2008 21:34:46
Se pierden datos en Insercion Masiva caifan_0883 Conexión con bases de datos 5 27-03-2008 01:58:47
Insercion masiva de una BD a otra BD oscjae Firebird e Interbase 5 15-12-2006 21:25:49
Insercion masiva de registros MUY LENTA Balda Firebird e Interbase 10 24-03-2004 22:40:21
Inserción masiva en MySQL Morfo MySQL 3 09-01-2004 19:05:33


La franja horaria es GMT +2. Ahora son las 19:59:06.


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