Nel passato, quando tutte le CPU erano a 32bit, ognuno di noi ha avuto il piacere di utilizzare almeno una volta (o per lungo tempo) il provider JET OLEDB per accedere a file Excel o MDB. Con SQL Server, questo provider è tipicamente utilizzato nelle funzioni OPENROWSET() e OPENDATASOURCE() del linguaggio T-SQL.
Con l’avvento delle CUP a 64bit (x64) e delle nuove versioni di Windows, anch’esse a 64bit, abbiamo dovuto gestire l’assenza del provider JET OLEDB che trovavamo, ad esempio, tra i provider disponibili su SQL Server in ambienti x86… contemporaneamente, sui forum dedicati alle tecnologie Microsoft, sono apparsi i primi post sull’argomento:
http://lmgtfy.com/?q=import+excel+into+sql+table
Dopo parecchie notti passate alla ricerca di una soluzione per stored procedure e applicazioni, migrate da ambienti x86 a x64 senza troppi test, e che utilizzavano JET OLEDB per accedere a file XLS e MDB, finalmente Microsoft ha implementato il provider ACE OLEDB.
Faruk Çelik, Microsoft Employee, ha chiarito l’utilizzo e le modalità di installazione del provider Microsoft.ACE.OLEDB.12 per l’accesso a file Excel sia da SQL Server che da applicazioni .NET; se volete chiarirvi i dubbi, date un’occhiata a questo articolo:
Accessing Excel files on a x64 machine.
Releted post:
SQL Server, SSIS, Driver Excel 2007 e Driver Excel 14 64 bit
Buona lettura!