FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
cargar plano txt en tabla sql server desde delphi 6
Neftali, necesito cargar un plano.txt a una tabla sql server de 200.000 registros a una velocidad conciderable, pues el proceso que utilizo actualmente me tarda hora y necesito minutos 5 tal vez.
creo que tu tienes la experiencia y muy seguramente me puedas ayudar a solucionar este problema. te lo agradezco |
#2
|
||||
|
||||
Hola Helbert, bienvenido a los foros.
Aunque yo sea el Administrador de los foros, piensa que hay muchas más gente que sabe del tema y te aseguro que muchos de ellos bastante más que yo. Para comprender lo que estás haciendo y cómo se puede mejorar, primero debes explicar cómo estás haciendo actualmente la importación de Datos desde la tabla plana a SQL Server. ¿Lo estás haciendo desde un programa Delphi? ¿Qué componentes estás utilizando? ¿Utilizas transacciones? Estaría bien que colocaras algo de código.
__________________
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. |
#3
|
||||
|
||||
Hola.
Acabo de hacer una sencilla prueba de importar utilizando ADO, 10.000 registros desde un fichero plano a una tabla de SQL Server (servidor remoto) y tarda apenas 20 sg. Así que estaría bien que describieras cómo estás haciendo el proceso. NOTA: Para el fichero TXT he accedido con un ADOTable y el driver de Jet4. NOTA: Para la tabla de SQL Server otro ADOTable.
__________________
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. |
#4
|
|||
|
|||
Neftali, gracias por responder
estoy utilizando este codigo delphi en el cual para insertar los campos a la tabla lo hagopor un procedimiento almacenado llamado Splanoswinsiob
Última edición por Neftali [Germán.Estévez] fecha: 08-04-2009 a las 17:29:04. |
#5
|
||||
|
||||
Para posteriores mensaje utiliza TAG's cuando pongas código Delphi, verás que se lee mejor.
Este ya te lo modifico yo.
__________________
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. |
#6
|
||||
|
||||
Hola Helbert. Pues he probado un código similar al tuyo porque tenía dudas sobre los Copy, pero el tiempo total de insertar 10.000 registros ha sido similar al anterior; Unos 20 segundos. Cosa que me hace pensar que no va por aquí la lentitud. Deberías mirar qué hace exactamente el StoredProc. También el tema de Red. Puedes poner una marca de tiempo después de cada insert para estimar qué está tardando en hacer una vuelta del bucle.
__________________
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. Última edición por Neftali [Germán.Estévez] fecha: 08-04-2009 a las 17:56:57. |
#7
|
|||
|
|||
este es el procedimiento que estoy usando
CREATE PROCEDURE spplanowinsiob ( @conse char (9),--0 @cod_suc char (4),--1 @fec_operacion char (8),--2 @vlr_nominal char(15),--3 @vlr_pesos char (15),--4 @tip_moneda char (2),--5 @form_pago char (2),--6 @tip_iden char (2),--7 @num_iden char (15),--8 @nom_razsoc char (40),--9 @dir_eccion char (25),--10 @cod_depart char (3),--11 @cod_munic char (4),--12 @cod_inditel char (8),--13 @num_tel char (10),--14 @tip_transac char (4),--15 @nom_remit char (40),--16 @n_idremit char (15),--17 @tp_idremit char (25),--18 @pais_orig char (3),--19 @Ori_desti char (1),--20 @ciuor_dest char (20),--21 @entidad char (40),--22 @num_cuenb char (16),--23 @detalle char (43)--24 ) AS begin Insert into PLANOWINSIOB(conse,cod_suc,fec_operacion,vlr_nominal,vlr_pesos,tip_moneda, form_pago,tip_iden,num_iden,nom_razsoc,dir_eccion,cod_depart,cod_munic,cod_inditel, num_tel,tip_transac,nom_remit,n_idremit,tp_idremit,pais_orig,Ori_desti,ciuor_dest, entidad,num_cuenb,detalle) Values (@conse,@cod_suc,@fec_operacion,@vlr_nominal,@vlr_pesos,@tip_moneda, @form_pago,@tip_iden,@num_iden,@nom_razsoc,@dir_eccion,@cod_depart,@cod_munic,@cod_inditel, @num_tel,@tip_transac,@nom_remit,@n_idremit,@tp_idremit,@pais_orig,@Ori_desti,@ciuor_dest, @entidad,@num_cuenb,@detalle) end GO |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Generar archivo delimitado desde tabla SQL Server | delphisenda | MS SQL Server | 1 | 28-06-2007 23:21:09 |
Crear tabla en una BD en Server A desde consulta en tabla B en server B | joaquinalberto | MySQL | 1 | 18-05-2007 10:39:27 |
Como Cargar Archivo Plano | mauroacev | Conexión con bases de datos | 3 | 17-03-2005 22:43:13 |
Cargar un TTreeView desde una tabla | hibero | OOP | 8 | 15-07-2004 19:43:33 |
Crear tabla temporal en SQL Server desde Delphi | oneromm | SQL | 1 | 23-12-2003 21:09:22 |
|