Foros del Web » Programación para mayores de 30 ;) » .NET »

guardar datos en sql server desde un archivo csv

Estas en el tema de guardar datos en sql server desde un archivo csv en el foro de .NET en Foros del Web. Hola a todos, Estoy realizando una pagina con asp.net y me gustaría poder subir a una base de datos sql server, los datos contenidos en ...
  #1 (permalink)  
Antiguo 29/10/2012, 07:35
Avatar de Sougiro  
Fecha de Ingreso: octubre-2007
Mensajes: 136
Antigüedad: 16 años, 6 meses
Puntos: 1
guardar datos en sql server desde un archivo csv

Hola a todos,

Estoy realizando una pagina con asp.net y me gustaría poder subir a una base de datos sql server, los datos contenidos en una archivo .csv delimitado por comas(,) o punto y coma(;), he estado buscando en la web y solo encuentro referencias a un Bulk insert en el sql, pero casi nada de asp.net.

Me podrían ayudar regalándome un ejemplo de como lo cargo y guardo los datos en la base de datos o decirme en donde encuentro esa información.

Muchas gracias.
  #2 (permalink)  
Antiguo 29/10/2012, 07:42
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 9 meses
Puntos: 267
Respuesta: guardar datos en sql server desde un archivo csv

Hola Sougiro, podrías por favor mostrarnos como está estructurado tu archivo? Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 30/10/2012, 06:17
Avatar de Sougiro  
Fecha de Ingreso: octubre-2007
Mensajes: 136
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: guardar datos en sql server desde un archivo csv

Hola mira al abrir un archivo de csv debe contener lo siguiente:

[PAIS];[PRODUCTO];[TIPO_DOCUMENTO];[TIPO_ERROR];[MAQUINA];[MOTOR_PROCESAMIENTO];[PROCESO];[ACCION];[SECUENCIA];[SINTOMA];[CAUSA];[OBSERVACIONES];[RUTA]
COLOMBIA;1;Orders;1;N/A;Orders PT Colombia;Orders BRIDGE ENVIO ;11101;2;Error al enviar el documento a la VANÿ;Ocurrio un error al enviar el documento a la VANÿ;"|EngineSPFinalizaCola:Antes=6,1;3,Program¢=7 ,2;1|Salida;Date:09:18:43:510 |Engine:InicioEjecucion;P:11101-A:7-S:2-F:26/10/2006 09:18:44.1044|Bridge_V1_0.Inicio|Ocurrio un error al enviar el documento a la VANEntrada;Date:09:18:50:947 ERROR CRITICO !! |EngineSPFinalizaCola:Finalizo Proceso|Salida;Date:09:18:50:947 ÿ";N/A
COLOMBIA;1;Orders;1;N/A;WAM/CEN&EDI2FAX;CO ORDERS EDI CARGUE DOCUMENTO -WAMSimple-;11180;3;;;"|EngineSPFinalizaCola:Antes=25,2;3,Pro gram¢=25,3;1|Salida;Date:09:49:18:413 |Engine:InicioEjecucion;P:11180-A:25-S:3-F:26/10/2006 09:49:19.1019|CCargueEDI.Inicio| Error por Tiempo-Revision. ";N/A
COLOMBIA;1;Orders;1;N/A;Otros Int;CO ORDERS EDI ACCIONES FIN DOCUMENTO POSITIVAÿ;11101;4;;ERROR : Fall¢ la programaci¢n del control ÿ;"|EngineSPFinalizaCola:Antes=3,3;3,Program¢=28,4 ;1|Salida;Date:09:03:39:757 |Engine:InicioEjecucion;P:11101-A:28-S:4-F:26/10/2006 09:03:50.1050| IBC_V2_ACCION_AGRUPAR_RESPUESTA:INICIO IBC_V2_ACCION_AGRUPAR_RESPUESTA Y FINALIZO CON ERROREntrada;Date:09:03:52:163 ERROR CRITICO !! |EngineSPFinalizaCola:Finalizo Proceso|Salida;Date:09:03:52:180 ÿ";N/A
COLOMBIA;1;Orders;1;N/A;WAM/CEN&EDI2FAX;Notificaci¢n por mail;11101;4;;;"|EngineSPFinalizaCola:Antes=3,3;3, Program¢=10,4;1|Salida;Date:15:04:54:160 |Engine:InicioEjecucion;P:11101-A:10-S:4-F:26/10/2006 15:04:55.1055| [Llamado: SendMail_V1_0.SendMail|3|StrCnx=SVR=172.16.32.111; CAT=COLAS_IBC_V2_0_WAM;UID=objetoscen;PWD=*objetos *2002;|NomTabla=COLA_IN|NomCampo=ID_COLA_IN|Ejecut ar=714478] Error por Tiempo-Revision. ÿ";N/A

jajaja, es mucho, pero para guiarte mejor en la parte de arriba están los campos
  #4 (permalink)  
Antiguo 30/10/2012, 08:38
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 9 meses
Puntos: 267
Respuesta: guardar datos en sql server desde un archivo csv

Tu archivo viene en su contenido con esa cabecera? Saludos!.

PDT: En la cabecera que muestras das 13 columnas... y al momento de separar tus filas por ";" salen mas de 13 campos... está bien estructurado ese archivo de texto?
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 30/10/2012 a las 10:09
  #5 (permalink)  
Antiguo 30/10/2012, 10:37
Avatar de Sougiro  
Fecha de Ingreso: octubre-2007
Mensajes: 136
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: guardar datos en sql server desde un archivo csv

Hola, no, esa cabecera se la coloque para que se puede visualizar la información, porque como hay campos muy grandes, solo es una guía.
  #6 (permalink)  
Antiguo 30/10/2012, 10:56
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 9 meses
Puntos: 267
Respuesta: guardar datos en sql server desde un archivo csv

Hola Sougiro, lo que puedes hacer es leer línea por línea el archivo y luego separar la cadena mediante un split con el ";" y ya estando separados tus datos insertarlos a tu BD :
Importas :
Código vb:
Ver original
  1. Import System.IO
Y luego :
Código vb:
Ver original
  1. 'Ruta del archivo
  2.        Dim archivo As String = Server.MapPath("\file\texto.txt")
  3.         'Array donde se almacenara los campos de la fila separados
  4.        Dim campos As String()
  5.         'Declaramos el lector
  6.        Dim reader As StreamReader
  7.  
  8.         Try
  9.             'Leemos su contenido
  10.            reader = File.OpenText(archivo)
  11.  
  12.             'Leemos linea por linea
  13.            While reader.Peek() <> -1
  14.  
  15.                 'Separamos la linea por el ;
  16.                campos = reader.ReadLine.Split(";")
  17.  
  18.  
  19.                 'Aqui haces el insert a la tabla de tu BD...
  20.                'INSERT INTO XXX VALUES(campos(0), campos(1), campos(2), campos(3), campos(4), campos(5), campos(6), campos(7), campos(8), campos(9), campos(10), campos(11), campos(12),...)"
  21.  
  22.             End While
  23.  
  24.             reader.Close()
  25.  
  26.         Catch ex As Exception
  27.  
  28.             'Aqui muestras tu mensaje de error
  29.  
  30.         End Try
Espero haberte aclarado un poco el panorama. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Última edición por Aquaventus; 30/10/2012 a las 11:20
  #7 (permalink)  
Antiguo 31/10/2012, 10:57
Avatar de Sougiro  
Fecha de Ingreso: octubre-2007
Mensajes: 136
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: guardar datos en sql server desde un archivo csv

Hola,

muchas gracias por la ayuda, me fue muy útil.

Gracias.
  #8 (permalink)  
Antiguo 31/10/2012, 11:00
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 9 meses
Puntos: 267
Respuesta: guardar datos en sql server desde un archivo csv

De nada Sougiro, cualquier problema no dudes en colocarlo al Foro. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Etiquetas: csv, net, server, sql
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:46.