![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Escritura de archivo dbf
Hola amigos del foro:
Actulamente estoy trabajando base de datos Oracle. Por cosas del destino necesito hacer un porgrama en D7, que 'exporte' la información a una tabla dbf. Las tablas destino y origen tienen la misma estructura. La cuestión es que he probado y mi programa funciona correctamente. El código que utilizo para copiar campo a campo entre la base de datos y la tabla es el siguiente: for i:= 1 to registros do begin Tabla.Insert; Tabla.Append; for j := 0 to NumeroCampos - 1 do begin Tabla.FieldByName(tabla.Fields[j].FieldName).AsVariant := qryExporta.FieldByName(qryExporta.Fields[j].FieldName).AsVariant; end; Tabla.ApplyUpdates; qryExporta.Next; end; ---------------------------------------- donde: QryExporta es el TQuery de Oracle (origen ) y Tabla es la tabla de FoxPro ( destino). Numero campos es el numero de campos de la tabla o el query ( al fin y al cabo es lo mismo). Mi problema reside en que cuando le cargo TQuery unos 1000 registros para copiar responde rápido ( unos 15 segs ), pero para unos 10000( diez mil) registros tarda unos 5 minutos. Habrá alguna manera de agilizar el proceso de copiado ya que cuando se utilice este programa se copiarán unos 400000 registros. Gracias y salu2 ![]()
__________________
Ernesto R. |
#2
|
|||
|
|||
Hola:
Cita:
Cita:
¿Te has planteado utilizar un componente TBachtMove? Hay que molestarse en asignar bien la equivalencia entre campos, pero es bastante más rápido que ir registro a registro. Hasta pronto, Un Saludo |
#3
|
||||
|
||||
Otra opción:
Si solo necesitas exportar los archivos DBF, te recomiendo que utilices un TDataToDBF, que es un componente creado con ese propósito y no utiliza DLLs ni BDE ni nada, lo puedes bajar de mi página, pertenece al ExportSuite.
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. ![]() |
![]() |
|
|
![]() |
|