Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Cargas archivo a una tabla.

Estas en el tema de Cargas archivo a una tabla. en el foro de SQL Server en Foros del Web. Estimados. Nesecito cargar desde un archivo txt que contiene muchas columnas, solo 10. como selecciono las columnas que debo cargar? es conveniente utilizar bulk insert? ...
  #1 (permalink)  
Antiguo 23/10/2006, 06:42
 
Fecha de Ingreso: marzo-2006
Mensajes: 12
Antigüedad: 18 años, 1 mes
Puntos: 0
Cargas archivo a una tabla.

Estimados.
Nesecito cargar desde un archivo txt que contiene muchas columnas, solo 10.
como selecciono las columnas que debo cargar?
es conveniente utilizar bulk insert?

Muchas Gracias.
  #2 (permalink)  
Antiguo 23/10/2006, 09:17
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
asi es el bulk insert esta optimizado para carga masiva....
puedes definirle un formato para la carga...
para mayor detalle puedes consultar la ayuda de SQL (BOL).
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #3 (permalink)  
Antiguo 25/10/2006, 09:43
 
Fecha de Ingreso: marzo-2006
Mensajes: 12
Antigüedad: 18 años, 1 mes
Puntos: 0
Muchas Gracias andres, estudiare el formato del bulk insert.
  #4 (permalink)  
Antiguo 31/10/2006, 13:24
Avatar de lop7  
Fecha de Ingreso: junio-2005
Ubicación: portuguesa (Venezuela)
Mensajes: 187
Antigüedad: 18 años, 11 meses
Puntos: 1
hola... no quise crear otro post pero tengo un problema y es del mismo tema
tengo lo siguiente:

bulk insert mvtopag
from 'D:\Cfacturap.xls'
with
(
FIELDTERMINATOR =';',
ROWTERMINATOR ='0'
)

y me sale este error:
Could not bulk insert. File 'D:\Cfacturap.xls' does not exist.

si me falta algo.... que es? si alguien puede ayudarme y porsupuesto el archivo existe y en esa ruta.

o será que cuando yo coloco esta instruccion "from 'D:\Cfacturap.xls'" el esta buscando en el discuduro del servidor porfavor aclarenme la duda...
__________________
A quien dices un secreto le entregas tu libertad :si:
  #5 (permalink)  
Antiguo 01/11/2006, 06:39
Avatar de lop7  
Fecha de Ingreso: junio-2005
Ubicación: portuguesa (Venezuela)
Mensajes: 187
Antigüedad: 18 años, 11 meses
Puntos: 1
definitivamente busca en el discoduro del servidor... intente dandole la ruta desde la maquina donde estoy ejecutando el procedimiento y me dice "Access is denied "......
pero cambie algunas cosas en la instruccion y queda asi:

bulk insert mvtopag
from 'D:\Cfacturap.xls'
with
(
FIELDTERMINATOR =';',
ROWTERMINATOR ='/'
)

aqui si tengo el archivo en el servidor...
tengo problemas con los tipos dice que hay error...
asi tengo los datos en la tabla...

CREATE TABLE [dbo].[mvtopag] (
[compania] [int] NOT NULL ,
[codprov] [int] NOT NULL ,
[numdcto] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[codstatu] [char] (2) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[monto] [decimal](11, 2) NOT NULL ,
[fechaven] [smalldatetime] NOT NULL
) ON [PRIMARY]

y en en .xls estan asi:esto es generado por otro programa... de otra BD y otra plataforma.

231; 5;11209415 ;PE; 450000,00;26/12/2006;/
231; 5;11209506 ;PE; 401518,00;26/12/2006;/
231; 5;11209577 ;PE; 7000000,00;25/12/2006;/
231; 148;007185 ;PE; 95000,00;24/11/2006;/
231; 1067;014630 ;PE; 70000,00;09/12/2006;/
231; 1067;014631 ;PE; 340000,00;09/12/2006;/
231; 1067;014632 ;PE; 220000,00;09/12/2006;/
231; 1067;014633 ;PE; 1160000,00;09/12/2006;/
231; 1067;014634 ;PE; 770000,00;09/12/2006;/
231; 1067;014635 ;PE; 280000,00;09/12/2006;/
231; 1067;014636 ;PE; 935000,00;09/12/2006;/
231; 1067;014637 ;PE; 875000,00;09/12/2006;/
231; 1067;014638 ;PE; 200000,00;09/12/2006;/
231; 1067;014639 ;PE; 120000,00;10/12/2006;/
231; 1067;014640 ;PE; 190000,00;10/12/2006;/

.en fin lo que necesito es subir estos datos a la tabla mencionada...

saludos.. gracias de antemano.
__________________
A quien dices un secreto le entregas tu libertad :si:
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:41.