Excel 2007 mit SQL Server 2005 Integration Services

Die SQL Server Integrationen Services kommen sowohl in der Version 2005 wie auch in der Version 2008 mit eigenen Adaptern für Excel daher; der Excel-Quelle und dem Excel-Ziel. Leider wird Excel 2007 erst ab dem SQL Server 2008 über diesen Adapter unterstützt.

Aber auch der Zugriff auf Excel 2007 mit den SQL Server 2005 Integration Services ist möglich. Hierfür müssen die von Microsoft angebotenen 2007 Office System-Treiber: Datenkonnektivitätskomponenten, auch bekannt als Microsoft ACE OLEDB 12.0, installiert werden. Das von Microsoft zum Download angebotene Paket mag aufgrund seines Namens “AccessDatabaseEngine.exe” vorerst ein bisschen verwirren, enthält aber verschiedene Komponenten um auf Access 2007 (mdb und accdb), Excel 2007 (xls, xlsx und xlsb) und Sharepoint zuzugreifen.

Sind die Komponenten installiert, muss innerhalb des Paketes eine neue OLEDB-Verbindung erstellt werden. Als Anbieter wird dafür der Microsoft Office 12.0 Access Database Engine OLE DB Provider ausgewählt.

image

 

In den erweiterten Einstellungen des Verbindungsmanagers, also im Bereich “Alle”, wird die Verbindung zur Excel-Datei hergestellt, in dem für die “Extended Properties” der Wert “Excel 12.0; HDR=YES” angegeben wird und als Data Source der Pfad zu Excel Datei.

image

 

Danach kann die OLEDB-Verbindung als Quelle oder Ziel für Excel 2007 Dateien genutzt werden.

Da der ACE Treiber leider nur für x86 Systeme zur Verfügung steht, muss auf einem x64 System im Visual Studio bzw. BIDS die x64 Runtime deaktiviert werden.

image
Mehr Informationen zu der x86 und x64 Problematik sind im Blog Eintrag 64-Bit Story von Deniz Erkan zu finden.