![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola,
lo primero que te diría es que me ha dado un poco de angustia leer tu petición por la forma en que te expresas y por las faltas de ortografía que tiene, tengo que ir descifrando lo que quieres decir, supongo que no seré el único al que le pase esto, lo segundo es que no das ninguna información de como lo estás haciendo, podrías poner algo de código, te podría decir que yo lo haría con una consulta insert pero a lo mejor ya lo estás haciendo. Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta. |
|
#2
|
|||
|
|||
|
Hola eldioni, gracias por tu tiempo, te pido disculpa, soy medio atolondrado para escribir. te paso el codigo.
con esto leo el txt:
y con este hago el proceso de carga
gracias Última edición por Chaja fecha: 03-04-2012 a las 17:49:09. |
|
#3
|
||||
|
||||
|
Pues sí, ha costado trabajo leerlo
![]() Resumiendo, dices que lees un fichero de texto y que tarda 10 horas y otras veces 36 horas. ¿Y? ![]() Edito: se te ha enrevesado el código ![]() A ver si puedes arreglarlo, en caso contrario, envíalo a nuestro email y te lo copio y pego para que salga correctamente.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#4
|
|||
|
|||
|
ahi corregi el codigo que no se veia...
|
|
#5
|
|||
|
|||
|
1) Para leer un fichero tan grande no uses el componente tmemo. Puedes usar:
Código:
var f : TextFile;
lineaactual : string;
begin
AssignFile('c:\test.txt', f);
try
Append(f);
while not Eof do begin
Readln(f, lineaactual); //creo que es así, busca en la ayuda de Delphi para asegurarte
//aqui haces lo que quieras con lineaactual
end;
finally
Closefile(f);
end;
end;
|
|
#6
|
||||
|
||||
|
Cita:
Además también quitaría el application.processmessages o que solamente lo hiciera cada ¿1000? registros.
Otra cosa, me ha parecido que lees a un clientdataset y luego sus valores lo pasas como parámetros a un stored procedure, ¿por qué no lo haces directamente?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#7
|
|||
|
|||
|
El CDS, lo puse para que el user vea como se carga... no se... y el memo lo puse para que se vea el archivo a cargar.
si el sleep() lo puedo sacar, aunque es un milisegundo ....mmmm....si pero si saco bien la cuenta son como 45 minutos no? |
|
#8
|
||||
|
||||
|
Por que no muestras de 1..10 registros de esos 2.789.636 que tienes para ver otra forma de ayudarte.
El motor que usas es Interbase 7.5 el mio es SQL SERVER 2005, en ocasiones tengo que incorporar un fichero de texto más o menos parecido al tuyo, sólo que éste es de combustible y lleva 7 campos que tengo que extraer, hay fichero que tienen 2095 registro y sólo dura en leerlo 1 segundo, en tu caso (2.789.636 / 2095) = (1.331,5685 / 60) = 22,224 Seg. NO 10..36 Horas. En SQL SERVER se crean dos ficheros que se llaman schema.ini y dgi.txt en tu caso. Estructuras del fichero schema.ini Cita:
Cita:
Un saludo
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. Última edición por olbeup fecha: 04-04-2012 a las 09:15:59. |
|
#9
|
||||
|
||||
|
Cita:
Quita todo lo que no sirva, la carga en el CDS la quitas también, el sleep no es un milisegundo realmente, además de que no sirve para nada. Resumiendo, lo más simple y eficaz.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ingresar registro en delphi php y Mysql | kurono | PHP | 1 | 06-06-2011 02:38:32 |
| Alguna forma más eficiente de enviar HTML al navegador-cliente ??? | chalao | Internet | 8 | 16-10-2008 18:23:03 |
| Forma eficiente de manejar arrays de 10'000.000 cuadrados | mamcx | OOP | 6 | 15-09-2006 21:01:12 |
| ¿Cómo Modificar un Registro de Tabla más Eficiente? | MartinC | MySQL | 1 | 16-03-2005 14:04:31 |
| Dar un valor a un registro en una tabla de forma automática | vhirginia | Conexión con bases de datos | 3 | 26-04-2004 19:50:42 |
|