Insertar desde Excel

09/04/2007 - 00:21 por \(R\)everte | Informe spam
Hola a todos, he creado una base de datos en SQL SERVER y me gustaria pasar
todos los datos de una hoja de excel. Se podrian pasar?.
Gracias

Preguntas similare

Leer las respuestas

#1 Maxi
09/04/2007 - 00:29 | Informe spam
Sip, podes usar paquetes DTS por ej

"(R)everte" escribió en el mensaje
news:
Hola a todos, he creado una base de datos en SQL SERVER y me gustaria
pasar todos los datos de una hoja de excel. Se podrian pasar?.
Gracias

Respuesta Responder a este mensaje
#2 Gustavo Larriera (MVP)
09/04/2007 - 00:41 | Informe spam
In article ,
says...
Hola a todos, he creado una base de datos en SQL SERVER y me gustaria pasar
todos los datos de una hoja de excel. Se podrian pasar?.
Gracias






No mencionas qué SQL Server usas, voy a reponder asumiendo SQL Server
2005 Standard o Enterprise.

Puedes usar los Integration Services, los asistentes de migración de
datos, el comando BCP y las sentencias basadas en OPENROWSET,
OPENDATASOURCE y OPENQUERY.

Si solamente debes tomar datos de una planilla Excel y pasarlos auna
tabla de una base de datos, personalmente usaría OPENROWSET que es
rápida y no muy sucia:

SELECT CustomerID, CompanyName
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'C:\Program Files\Microsoft Office\OFFICE11\SAMPLES
\Northwind.mdb';
'admin';'',Customers)
GO

Este ejemplo es para leer de Access, debes adaptarlo.

Gustavo Larriera, MVP
Solid Quality
Blog: http://blogs.solidq.com/ES/glarriera
MVP Profile: https://mvp.support.microsoft.com/p...464A-F453-
4CFC-8F7E-C9BEADD8FB25
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.
Respuesta Responder a este mensaje
#3 \(R\)everte
09/04/2007 - 14:33 | Informe spam
Ok, voy a intentarlo como dices, a ver que me sale. Gracias
"Gustavo Larriera (MVP)" escribió en el mensaje
news:
In article ,
says...
Hola a todos, he creado una base de datos en SQL SERVER y me gustaria
pasar
todos los datos de una hoja de excel. Se podrian pasar?.
Gracias






No mencionas qué SQL Server usas, voy a reponder asumiendo SQL Server
2005 Standard o Enterprise.

Puedes usar los Integration Services, los asistentes de migración de
datos, el comando BCP y las sentencias basadas en OPENROWSET,
OPENDATASOURCE y OPENQUERY.

Si solamente debes tomar datos de una planilla Excel y pasarlos auna
tabla de una base de datos, personalmente usaría OPENROWSET que es
rápida y no muy sucia:

SELECT CustomerID, CompanyName
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'C:\Program Files\Microsoft Office\OFFICE11\SAMPLES
\Northwind.mdb';
'admin';'',Customers)
GO

Este ejemplo es para leer de Access, debes adaptarlo.

Gustavo Larriera, MVP
Solid Quality
Blog: http://blogs.solidq.com/ES/glarriera
MVP Profile: https://mvp.support.microsoft.com/p...464A-F453-
4CFC-8F7E-C9BEADD8FB25
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.
Respuesta Responder a este mensaje
#4 \(R\)everte
09/04/2007 - 14:41 | Informe spam
Tengo SQL Server 2005, pero no entiendo mucho de SQL, asi que me gustaria
que me lo explicaras como hacerlo, ya que no veo como usar los asistentes.
Cuando marco la base de datos y le doy al boton derecho me salen las
opciones seguientes:
CREATE TO
DROP TO
SELEC TO
INSER TO
UPDATE TO
DELETE TO
No se si es ahi donde debe de ir.
De todas maneras os puedo decir que los nombres de los campos de la tabla
exel y la de las base de datos SQL son iguales.
Un saludo
"Gustavo Larriera (MVP)" escribió en el mensaje
news:
In article ,
says...
Hola a todos, he creado una base de datos en SQL SERVER y me gustaria
pasar
todos los datos de una hoja de excel. Se podrian pasar?.
Gracias






No mencionas qué SQL Server usas, voy a reponder asumiendo SQL Server
2005 Standard o Enterprise.

Puedes usar los Integration Services, los asistentes de migración de
datos, el comando BCP y las sentencias basadas en OPENROWSET,
OPENDATASOURCE y OPENQUERY.

Si solamente debes tomar datos de una planilla Excel y pasarlos auna
tabla de una base de datos, personalmente usaría OPENROWSET que es
rápida y no muy sucia:

SELECT CustomerID, CompanyName
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'C:\Program Files\Microsoft Office\OFFICE11\SAMPLES
\Northwind.mdb';
'admin';'',Customers)
GO

Este ejemplo es para leer de Access, debes adaptarlo.

Gustavo Larriera, MVP
Solid Quality
Blog: http://blogs.solidq.com/ES/glarriera
MVP Profile: https://mvp.support.microsoft.com/p...464A-F453-
4CFC-8F7E-C9BEADD8FB25
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.
Respuesta Responder a este mensaje
#5 Gustavo Larriera (MVP)
09/04/2007 - 19:24 | Informe spam
Ejecuta una consulta de la siguiente manera, suponiendo que MiTabla es la
tabla de la base de datos donde vas a recibir los datos de la planilla Excel:

INSERT INTO MiTable(columna1, columna2, ...)
SELECT columna1, columna2, ...
FROM
OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\test\xltest.xls;Extended Properties=Excel
8.0')...[NombreHojaExcel$]


Hay una explicación detallada (en inglés) en:

How to import data from Excel to SQL Server
http://support.microsoft.com/kb/321686

Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://blogs.solidq.com/ES/glarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"(R)everte" wrote:

Tengo SQL Server 2005, pero no entiendo mucho de SQL, asi que me gustaria
que me lo explicaras como hacerlo, ya que no veo como usar los asistentes.
Cuando marco la base de datos y le doy al boton derecho me salen las
opciones seguientes:
CREATE TO
DROP TO
SELEC TO
INSER TO
UPDATE TO
DELETE TO
No se si es ahi donde debe de ir.
De todas maneras os puedo decir que los nombres de los campos de la tabla
exel y la de las base de datos SQL son iguales.
Un saludo
"Gustavo Larriera (MVP)" escribió en el mensaje
news:
In article ,
says...
> Hola a todos, he creado una base de datos en SQL SERVER y me gustaria
> pasar
> todos los datos de una hoja de excel. Se podrian pasar?.
> Gracias
>
>
>

No mencionas qué SQL Server usas, voy a reponder asumiendo SQL Server
2005 Standard o Enterprise.

Puedes usar los Integration Services, los asistentes de migración de
datos, el comando BCP y las sentencias basadas en OPENROWSET,
OPENDATASOURCE y OPENQUERY.

Si solamente debes tomar datos de una planilla Excel y pasarlos auna
tabla de una base de datos, personalmente usaría OPENROWSET que es
rápida y no muy sucia:

SELECT CustomerID, CompanyName
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'C:\Program Files\Microsoft Office\OFFICE11\SAMPLES
\Northwind.mdb';
'admin';'',Customers)
GO

Este ejemplo es para leer de Access, debes adaptarlo.

Gustavo Larriera, MVP
Solid Quality
Blog: http://blogs.solidq.com/ES/glarriera
MVP Profile: https://mvp.support.microsoft.com/p...464A-F453-
4CFC-8F7E-C9BEADD8FB25
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida