Excel 2007-es adatok beolvasása az SSIS segítségével
A héten be kellett töltenem Excel 2007-ben tárolt információkat az adatpiacba, és meglepődve tapasztaltam, hogy az SSIS beépített Excel source connection –e nem támogatja az Excel 2007-et. Némi kutakodás után megtudtam, hogy a jövőben nem lehet majd elérni az Excel állományok adatait a megszokott Jet Engine segítségével:
“Microsoft Office 2007 files have a new format and are not supported by the Jet 4.0 OLE DB provider. Specifically, the Microsoft Excel data source and data destination cannot be used with Microsoft Excel 2007 files. Microsoft Office 2007 shipped with a new OLE DB provider, the Office 12 Microsoft Access Engine OLE DB Provider (ACE). The ACE provider must be used with Microsoft Excel 2007 and Microsoft Access 2007 data, but ACE supports only Microsoft Office 2007 data. SSIS has not been specifically tested with other data that is compatible with ACE, such as Microsoft SharePoint® data.” Forrás: Connectivity and SQL Server 2005 Integration Services
Ha tehát Excel 2007-es állományokat akarunk feldolgozni az SSIS segítségével, akkor a Jet engine helyett az Office 12 Microsoft Access Engine OLE DB Provider-t kell használnunk. Az új provider letölthető a Microsoft.com/downloads oldalról és telepítése után elérhetővé válnak az Excel 2007-es állományok is.
Excel 2007 connection létrehozásának lépései (A Microsoft Access Engine telepítése után)
- New OLE Db connection (Nem Excel Source! Hanem OLE Db connection)
- A provider-ek közül ki kell választani a “Microsoft Office 12.0 Access Database Engine OLE DB Provider”
- Meg kell határozni az Excel 2007 fájl elérési útját
- Az All fülön, az Extended Properties-hez be kell írni az “Excel 12.0”-át
- Kész
Megj.: Az Excel 2007-nél korábbi verziókat továbbra is elérhetjük az Excel Source connection segítségével
Felhasznált irodalom:
- SQL Server 2005 Books Online: Excel Connection Manager
Kővári Attila - BI projekt
Új hozzászólás