2008-12-03 17 views

Respuesta

6

Puede utilizar el comando BULK INSERT T-SQL si solo desea una solución de sql puro. Primero debe guardar el archivo como csv/texto.

BULK 
INSERT YourDestinationTable 
     FROM 'D:\YourFile.csv' 
      WITH 
    (
       FIELDTERMINATOR = ',', 
       ROWTERMINATOR = '\n' 
    ) 
GO 

Alternativamente, puede probar OPENROWEST - una vez más, una solución pura de T-SQL.

SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;DATABASE=D:\YourExcelFile.xls', 'Select * from YourExcelFile') 

Realmente depende de cuánto control y flexibilidad desee, la ruta de SSIS tendrá ventajas sobre estos métodos.

2

Mirando por encima del código, que sería de esperar que sea el nombre de ruta completo del documento Excel:

Por ejemplo: c: \ ruta \ a \ mi \ Excel \ document.xls

No he instalado el procedimiento ni lo he ejecutado, así que podría estar equivocado, pero eso es lo que parece ser a primera vista.

1

Sugiero usar un paquete SSIS/DTS, para convertir. Es mucho mas facil

SSIS Excel example

** en cuenta que este ejemplo es utilizar el asistente. puede programar el paquete SSIS/DTS como un trabajo para ejecutar, en su cuadro de SQL.

0

This example copia los datos de SQL a Excel. Pero solo se trata de cambiar los proveedores de OleDb para que funcione en la dirección opuesta.

Cuestiones relacionadas