xml a datatable

24/03/2009 - 12:58 por Jesús Rodríguez | Informe spam
Hola buenos días.
Llevo peleandome con una cosa toda la mañana a ver si me podéis
ayudar.
Tengo un datatable con aproximadamente 1000 registros que provienen de
un archivo excel

Estos 1000 registros quiero insertarlos en una tabla temporal de sql
server 2005 (de una sola vez) y hacer un join contra otra tabla para
sacar en otro datatable los diferentes datos para rellenar un grid.

Estoy intentando pasar el primer datatable que proviene del excel a
xml y ese xml pasarselo a la tabla pero no tengo ni idea como poder
hacerlo.
No se si me he explicado bien.
Se os ocurre algo
Saludos, Jesús

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
24/03/2009 - 13:42 | Informe spam
"Jesús Rodríguez" wrote in message
news:
Mostrar la cita
Si realmente quieres pasar por medio de un XML, puedes salvar el
DataTable a un archivo XML mediante el método WriteXml del DataTable, y
luego leer el xml desde el Sql Server utilizando (por ejemplo) la función
OPENXML.

Pero no comprendo el motivo de querer pasar por xml. ¿Por qué no
insertas directamente los datos del DataTable en el Sql Server? Bastaría
usar un DataAdapter bien configurado, y si quieres que se haga de una sola
vez, basta que le pongas al DataAdapter un número grande en su propiedad
UpdateBatchSize.
#2 Jesús Rodríguez
24/03/2009 - 16:58 | Informe spam
Hago lo del writexml y sin problema pero luego no soy capaz de leerlo
desde sql server.

Saludos y gracias, jesús


On 24 mar, 13:42, "Alberto Poblacion" <earthling-
wrote:
Mostrar la cita
#3 Alberto Poblacion
24/03/2009 - 17:21 | Informe spam
"Jesús Rodríguez" wrote in message
news:
Mostrar la cita
Una opción: usando "XML Bulk Load":
http://msdn.microsoft.com/es-es/lib...71993.aspx


Otra opción: OPENROWSET:
http://weblogs.sqlteam.com/mladenp/...60235.aspx

Otra: En lugar de WriteXml usa GetXml para obtener el XML en un String.
Después, pásale el XML como argumento a un procedimiento almacenado, y
dentro del procedimiento "digiérelo" con sp_xml_preparedocument ... OPENXML
... sp_xml_removedocument:
http://msdn.microsoft.com/es-es/lib...86918.aspx
#4 Jesús Rodríguez
25/03/2009 - 16:14 | Informe spam
Muchas gracias por la ayuda.


On 24 mar, 17:21, "Alberto Poblacion" <earthling-
wrote:
Mostrar la cita
Ads by Google
Search Busqueda sugerida