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

BULK INSERT - TXT Plano sin delimitador de campos

Estas en el tema de BULK INSERT - TXT Plano sin delimitador de campos en el foro de SQL Server en Foros del Web. Estimados tengo la siguiente consulta: Necesito importar con BULK INSERT in archivo de texto plano, que NO tiene separación de campos. BULK INSERT [BASE] FROM ...
  #1 (permalink)  
Antiguo 27/07/2011, 13:57
 
Fecha de Ingreso: septiembre-2003
Ubicación: VIña del Mar
Mensajes: 70
Antigüedad: 21 años, 3 meses
Puntos: 0
Pregunta BULK INSERT - TXT Plano sin delimitador de campos

Estimados tengo la siguiente consulta:

Necesito importar con BULK INSERT in archivo de texto plano, que NO tiene separación de campos.

BULK INSERT [BASE]
FROM 'd:\archivo.txt'
WITH (
formatfile = 'd:\formato.fmt'
)

El archivo de formato es el siguiente

Código:
10.0
4
1       SQLCHAR             2       2       ""   1  TIPO_REGISTRO                                          
2       SQLCHAR             2       3       ""   2     EMISOR                                                 
3      SQLCHAR             2        5     ""   3    FILLER 
4      SQLCHAR             2        2     ""   3    FILLER2

Y la base dicta así
Código:
AABBBCCCCCDD
AABBB
AABBBCCCCCDD
AABBBCCCCCDD
AABBB
AABBBCCCCCDD
El problema es que no todos los registros tiene el ultimo campo, por lo que al importar un registro me inserta dos lineas en el mismo registro.


Como puedo importar este archivo indicándole que inserte null en los campos que faltan???


Agradezco de ante mano cualquier ayuda o pista que me puedan dar.
__________________
www.cielonegro.cl
Comunidad chilena de entretencion
  #2 (permalink)  
Antiguo 27/07/2011, 14:14
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 4 meses
Puntos: 774
Respuesta: BULK INSERT - TXT Plano sin delimitador de campos

Si no le pones un delimitador esta dificil hacer lo que dices, si tuvieras delimitadores todos los campos de tu extracto tendrian el mismo formato ejemplo

a,a,a,,b\n
a,b,b,b,c\n

y asi los que no vienen los mete como null en la base pero si no tienes delimitadores pues si esta medio en chino...

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 27/07/2011, 14:22
 
Fecha de Ingreso: septiembre-2003
Ubicación: VIña del Mar
Mensajes: 70
Antigüedad: 21 años, 3 meses
Puntos: 0
Respuesta: BULK INSERT - TXT Plano sin delimitador de campos

Si, lamentablemente la base la viene en ese formato, por eso estoy pelando con este problema.
__________________
www.cielonegro.cl
Comunidad chilena de entretencion
  #4 (permalink)  
Antiguo 27/07/2011, 14:41
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Respuesta: BULK INSERT - TXT Plano sin delimitador de campos

Subelo directamente sin un formato de archivo a un campo de 255 char y "arriba en la base", ya puedes manipularlo como quieras.
__________________
MCTS Isaias Islas

Etiquetas: bulk, delimitadores, plano, txt
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 03:32.