Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/04/2013, 07:33
astrow25
 
Fecha de Ingreso: enero-2006
Mensajes: 263
Antigüedad: 18 años, 4 meses
Puntos: 1
No me exporta los datos de excel a sql

Hola,

Tengo una pagina, para exportar los datos de un excel a sql server.

He estado comprobando y el error salta en oCnn.Open(), sin embargo si lo hago con el depurador de Visual Studio, pasa los datos correctamente

El codigo es el siguiente, por si me podeis hechar una mano

Código ASP:
Ver original
  1. Protected Sub cmdSubir_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles cmdSubir.Click
  2.      Dim sExt As String = String.Empty
  3.      Dim sName As String = String.Empty
  4.      Dim excelconex As String = ""
  5.      Dim arch As String
  6.      Dim sWorkbook As String
  7.      Dim oCnn As New OleDbConnection
  8.      Dim oCmd As New OleDbCommand
  9.      Dim oDr As OleDbDataReader
  10.      'COMPRUEBO SI SE HA SUBIDO ALGUN ARCHIVO
  11.       If uploadFile.HasFile Then
  12.       'RECOGO EL NOMBRE DEL ARCHIVO
  13.        sName = uploadFile.FileName
  14.        sExt = Path.GetExtension(sName)
  15.        'GUARDO EL ARCHIVO EN LA CARPETA TEMP
  16.        uploadFile.SaveAs(MapPath("tmp/" & sName))
  17.       Select Case sExt
  18.              Case Is = ".xls"
  19.                  excelconex = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  20.                                        "Data Source=" & Server.MapPath("tmp/" & sName) & ";" & _
  21.                                              "Extended Properties=Excel 8.0;"
  22.               Case Is = ".xlsx"
  23.                   excelconex = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  24.                                               "Data Source=" & Server.MapPath("tmp/" & sName) & ";" & _
  25.                                               "Extended Properties=Excel 12.0;"
  26.               End Select
  27.               sWorkbook = "[Hoja1$]"
  28.                'OBTENGO LOS DATOS NECESARIOS DEL ARCHIVO EXCEL
  29.                oCnn = New OleDbConnection
  30.                oCnn.ConnectionString = excelconex
  31.                oCmd = New OleDbCommand("SELECT F2,F3,F4,F5,F6,F7,F8 FROM " & sWorkbook & " where F7 is not null", oCnn)
  32.               'aqui es donde casca
  33.                oCnn.Open()[/B][/I]
  34.                oDr = oCmd.ExecuteReader
  35.                If oDr.HasRows Then
  36.                      while odr.read()
  37.                          'Introduzco los datos en la tabla mediante proc.almacenado
  38.                      end while
  39.                End if
  40.     End if
  41. End sub