Jump to content

SQL - OPENROWSET mit Microsoft.ACE.OLEDB.12.0 nur als Admin möglich


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen.

Ich arbeite mit Windows 7, auf dem ein MSSQL Server 2008 R2 Express läuft. Ich möchte nun Abfragen auf Office-Dokumente laufen lassen. Zum Beispiel in der Form:

 

SET @anz = (SELECT COUNT(B.ISTTAG) FROM (

SELECT A.INVENTURSTICHTAG AS ISTTAG FROM OPENDATASOURCE ('Microsoft.ACE.OLEDB.12.0',

'Data Source=C:\Users\Ronald\Documents\Visual Studio 2008\Projects\DocAlfredo\ausgabe\Inventurmappe.xlsx;Extended Properties=Excel 12.0 Xml')...[inventurbestand$] AS A

GROUP BY A.INVENTURSTICHTAG) AS B)

 

 

Das funktioniert auch, so lange ich mich als Windows-Administrator am SQL-Server anmelde. Wenn ich mich allerdings als normaler Windows-Benutzer anmelde und die Abfrage starte erhalte ich die Meldung

 

Der OLE DB-Anbieter 'Microsoft.ACE.OLEDB.12.0' für den Verbindungsserver '(null)' hat die Meldung 'Unbekannter Fehler' zurückgeben.

Meldung 7303, Ebene 16, Status 1, Zeile 1

Das Datenquellenobjekt des OLE DB-Anbieters 'Microsoft.ACE.OLEDB.12.0' für den Verbindungsserver '(null)' kann nicht initialisiert werden.

 

Die Meldung erhalte ich auch, wenn der windows-Benutzer alle Berechtigungen im SQL-Server hat.

 

Ich gehe davon aus, dass irgendwo im Dateisystem eine Berechtigung fehlt, weis aber nicht so ganz, wo ich da anfangen sollte. Bzw. ich habe schon alle Freigaben erteilt

 

Vieleicht kann mir ja hier jemand weiterhelfen.

 

Danke schon einmal im Voraus.

 

Gruß

Orlando

Link zu diesem Kommentar

SET @anz = (SELECT COUNT(B.ISTTAG) FROM (

SELECT A.INVENTURSTICHTAG AS ISTTAG FROM OPENDATASOURCE ('Microsoft.ACE.OLEDB.12.0',

'Data Source=C:\Users\Ronald\Documents\Visual Studio 2008\Projects\DocAlfredo\ausgabe\Inventurmappe.xlsx;Extended Properties=Excel 12.0 Xml')...[inventurbestand$] AS A

GROUP BY A.INVENTURSTICHTAG) AS B)

 

 

Das funktioniert auch, so lange ich mich als Windows-Administrator am SQL-Server anmelde. Wenn ich mich allerdings als normaler Windows-Benutzer anmelde und die Abfrage starte erhalte ich die Meldung

 

Der OLE DB-Anbieter 'Microsoft.ACE.OLEDB.12.0' für den Verbindungsserver '(null)' hat die Meldung 'Unbekannter Fehler' zurückgeben.

Meldung 7303, Ebene 16, Status 1, Zeile 1

Das Datenquellenobjekt des OLE DB-Anbieters 'Microsoft.ACE.OLEDB.12.0' für den Verbindungsserver '(null)' kann nicht initialisiert werden.

 

Hat der am SQL Server angemeldete Benutzer auch genügend NTFS-Berechtigungen um in das Verzeichnis C:\Users\Ronald\Documents\ zugreifen zu dürfen?

Link zu diesem Kommentar

:), ich habs geschafft.

Es lag entweder an einer nicht eingeräumten Ordnerzugriffsberechtigung oder an einer (längst vergessenen) persistenten VBA-SQL-Connection in ACCESS 2010, die auf den SQL-Serverzugriff. Nachdem ich die Ordnerzugriffsberechtigungen nochmals für jeden zugänglich gemacht hatte und die VBA-Anwendung entfernt hatte, konnte ich den OPENDATASOURCE-Befehl auch als Anwender - und nicht nur als Administrator - anwenden.

Danke für den Tipp mit NTFS.

Gruß

Orlando

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...