Visual CSharp .NET - Importacion Excel a Sql c# encabezados con espacios

 
Vista:

Importacion Excel a Sql c# encabezados con espacios

Publicado por Cao (2 intervenciones) el 21/03/2014 02:14:37
Hola,

Tengo un formulario web en donde cargo un excel, para importar los datos a sql server 2008 utilizando la herramienta visual studio 2010 lenguaje c#, el motivo de mi problema es que el excel tiene encabezados con espacios y puntos por ejemplo: Valor Pte UM. , este es solo el encabezado de una columna por lo tanto el aplicativo se cae al intentar realizar la consulta respectiva:

string sql = "Select Folio, Item, Emisor, Valor Pte UM., Valor UF. FROM [Dividendos$A4:E98]"

He intentado colocar [Valor Pte UM.] pero tampoco me da resultados.

Agradecería sus comentarios e información.

De ante mano gracias.... Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Importacion Excel a Sql c# encabezados con espacios

Publicado por omar (14 intervenciones) el 21/03/2014 14:50:41
debes crear un archivo definido como los encabezados y solo exportar las filas a el Excel

el Excel debe estar en tu proyecto para que se realice de forma adecuada la exportación de las filas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Importacion Excel a Sql c# encabezados con espacios

Publicado por Cao (2 intervenciones) el 25/03/2014 19:52:33
Estimado,

Agradezco tu respuesta, pero lo he solucionado de la siguiente forma:

1
2
3
4
string fileName = Path.GetFileName(fuExcel.PostedFile.FileName);
string fileExtension = Path.GetExtension(fuExcel.PostedFile.FileName);
string fileLocation = Server.MapPath("~/App_Data/" + fileName);
fuExcel.SaveAs(fileLocation);


En el IMEX tenia puesto 2 y lo cambie a 1

1
2
3
4
if (fileExtension == ".xls")
{
    connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileLocation + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";
}


La consulta la modifique asi:

1
sql = "SELECT Folio, Item, Emisor, [Valor~Pte UM#],[Valor~Pte MC#] FROM [" + tabla.Replace("'", "") + "C7:U2445" + "]";

Los campos en el Excel estaban con espacios y puntos Valor~Pte UM. y Valor~Pte MC. por lo tanto no podía realizar bien la consulta le agregue los [] y los puntos los reeemplace por (#) no se por que el codebehind lo interpreta asi, ojala también te pueda servir y gracias por tu respuesta.

Saludos.

CMM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar