ODBC Zugriff auf DB schlägt fehl

Hallo zusammen,

vlt hat einer von euch eine Lösung für mein Problem.
Per ODBC greife ich von Access auf verschiedene Tabellen auf einem SQL-Server zu. Jedoch ist der Zugriff auf einige Tabellen jedoch nur mit einem anderen User möglich.
Jetzt habe ich eine SQL Pass-Through Query erstellt, die 2 Tabellen (unterschiedlicher User) verknüpft. Ich weiß jedoch nicht, ob das Problem der unterschiedlichen User folgendes Problem verursacht.
Es ist nämlich so, dass ich auf diese Pass-Through Query noch eine Abfrage laufen lasse. Starte ich diese manuell in der „Query-Übersicht“ läuft diese Abfrage auch so, wie sie es soll.
Jedoch will ich sie durch einen Button-Klick auf einer Form laufen lassen. Das Makro benutzt den Befehl DoCmd.OpenQuery „Meine_Query“. Nun kommt die Fehlermeldung:
Run-time error ‚3146‘:
ODBC–call failed.
[Microsoft][ODBC SQL Server Driver][SQL SERVER]SELECT permission denied on object ‚TABELLE_MIT_SPEZ_USER‘, database ‚DB‘, owner ‚SPEZ_USER‘.(#229)
Versuche ich nun, die Query in der „Query-Übersicht“ zu öffnen, kommt nun die Fehlermeldung wie oben. Auch die SQL Pass-Through Query lässt sich nicht mehr öffnen. Beende ich Access und starte es neu, funktioniert dies zumindest wieder, aber das Problem bei der Abfrage über VBA bleibt.
Übrigens funktioniert der Befehl DoCmd.RunSQL „Select auf SQL PASS THROUGH“ ebensowenig…

Ich weiß vlt eine lange Beschreibung eines Fehlers, aber ich weiß echt nicht, an was es liegen könnte, deshalb etwas mehr als weniger :wink:
Vielen Dank für eure Hilfe und Einfälle.

Viele Grüße,
NordendAntistar

Hallo NordendAntistar,

vlt hat einer von euch eine Lösung für mein Problem.

das denke ich doch :smile:

Per ODBC greife ich von Access auf verschiedene Tabellen auf
einem SQL-Server zu.

wie sehen deine Einstellungen unter Start -> Systemsteuerung -> Datenquellen (ODBC)
für diese speziellen Tabellen aus?

Jedoch ist der Zugriff auf einige Tabellen jedoch nur mit einem anderen User möglich.

hast du schon mal versucht, die Tabellen über Datei -> externe Daten zu verknüpft?

BTW über welche Access-Version reden wir? Du nutzt den MS SQL-Server Version?

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)

Hi Wolfgang,

danke für die schnelle Antwort.

wie sehen deine Einstellungen unter Start ->
Systemsteuerung -> Datenquellen (ODBC)
für diese speziellen Tabellen aus?

Also habe mal geschaut. Zum Thema ODBC… Greife über File DSN zu (per SQL Server authentification). Dann sind die client configurations TCP/IP und „Use dynamically determine“ markiert. Vlt liegt hier schon ein Fehler? Weiterhin sind die Einstellungen „Use ANSI quoted identifiers“ und „Use ANSI nulls, paddings and warnings“ markiert.

über welche Access-Version reden wir? Du nutzt den MS
SQL-Server Version?

Benutzen tue ich MS Access 2003 und MS SQL Server 2005.

Den Schritt über File get external Data bin ich nicht gegangen. Ist das nicht das selbe wie über den Rechtsklick in der Übersicht Tabelle.?? So habe ich jedenfalls die Verbindung aufgebaut…

So nu noch was komisches: Die Abfrage über den VBA-Code hat heut morgen funktioniert, aber auch nur einmal… =(

Viele Grüße,
NordendAntistar

Hi NordendAntistar,

So nu noch was komisches: Die Abfrage über den VBA-Code hat
heut morgen funktioniert, aber auch nur einmal… =(

*grübel*

  • die Tabelle ist NICHT in einem Netzwerk auf einem Server?
  • es greift KEIN anderer User gleichzeitig auf die Tabellen zu?

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)

Hi

  • die Tabelle ist NICHT in einem Netzwerk auf einem Server?

Doch doch, sie ist schon auf einem Server im Netzwerk

  • es greift KEIN anderer User gleichzeitig auf die Tabellen zu?

Ich glaube, dass ist der Punkt. Es ist eine riesen Tabelle und diese wird auch verwendet. Ich glaube zwar meist nur lesend, aber es kommt auch ab und zu vor, dass sie schreibend verwendet wird…
Bei der betroffenen tabelle habdelt es sich um ein Archiv, wo regelmäßig alte Daten reingeschrieben werden.
Wahrscheinlich ist deshalb der Zugriff nicht immer möglich^^

Aber danke für die Annahme des Problems =)