Importar datos de Excel a SQL Server 2005
Como importar datos de Excel a SQL Server 2005 ??
Primero que todo habilitar el soporte para los servicios de OPENROWSET y OPENDATASOURCE que son los encargados de aceptar la conexión entre SQL Server 2005 y excel. Se habilita en en:
Inicio -> Microsoft SQL Server 2005 -> configuration tools -> SQL surface area configuration -> enable OPENROWSET AND OPENDATASOURCE support
Luego en el SQL Server 2005 se ejecuta el querry encargado de importar las datos:
USE nombre-base-de-datos
/* importantando los datos para la tabla [ orders ]*/
GO
SELECT orderId, orderDate, customerId, employeeId INTO orders FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\datos.xls;Extended Properties=Excel 8.0')...[Sheet2$]
go
Los valores orderId, orderDate, customerId y employeeId son nombres de las columnas que tiene el archivo de excel que estamos importando.
El valor orders en el nombre de la tabla de la base de datos a la que se importaran los datos. Si la tabla no existe será creada.
El valor de C:\datos.xls es el nombre del archivo de excel donde están los datos y el valor [Sheet2$] es el nombre de la hoja de del documento de excel donde están los datos.
gracias por la info. me ha servido mucho. gracias
gracias por la ayuda me sirvio mucho gracias pero un favor solo puedo subirle cuando la tabla no esta creado, pero cuando ya esta creada me sale el siguiente error
“Mens. 2714, Nivel 16, Estado 6, Línea 1
Ya hay un objeto con el nombre ‘tb_banco_borrar1′ en la base de datos.” me podrias ayudar con eso
Hola que tal mi problema es que el mismo, necesito subir 1500 registros a una base que ya cuanta con 2000 registros, en SQL2008R2 y ya intente dela manera que explican per de nada me srive si me crea una nueva tabla, pues tengo que complementar la ya existente, podrian ayudarme?
Hola Carlos, dame mas detalle a ver si te puedo ayudar
saludos
Alguien me puede ayudar con este error:
Msg 7403, Level 16, State 1, Line 1
The OLE DB provider “Microsoft.Jet.OLEDB.12.0″ has not been registered.
Ya instale el paquete AccessDatabaseEngine.exe pero aun así no me permite realizar la Query.
Utilizo Sql Server 2005 y ya configure en el Surface Area Configuration la opción de Ad Hoc Remote Queries.
Desde ya muchas gracias.
Hola,
echale un vistazo a este enlace:
http://blogs.msdn.com/b/spike/archive/2009/02/27/system-invalidoperationexception-the-microsoft-ace-oledb-12-0-provider-is-not-registered-on-the-local-machine.aspx
saludos