MDAC-Versionen

Frage:
Die aktuell installierte MDAC-Version soll ermittelt werden.

Lösung:
Microsoft stellt im Download-Center unter Data Access Components den Component Checker zur Verfügung, mit dem die installierte MDAC-Version ermittelt werden kann. An dieser Stelle ist auch die aktuelle MDAC-Version verfügbar.

/* übernommen aus der Original sqlfaq.de */

Daten in verknüpften Tabellen nicht änderbar

Frage:
Die Daten einer in Access eingebundenen SQL Server-Tabelle können nicht geändert werden.

Lösung:
Um die Daten einer SQL Server-Tabelle in Access bearbeiten zu können, muss die Tabelle in Access einen Primärschlüssel besitzen.
Dabei ist es nicht zwingend erforderlich, die SQL Server-Tabelle mit einem Primärschlüssel zu ergänzen. Der Primärschlüssel lässt sich auch beim Einbinden der Tabelle bestimmen.

Die Spalte des Primärschlüssels sollte jedoch einen Datentyp verwenden, der in SQL Server und Access gleich definiert ist. So sind Gleitkommazahlen zu vermeiden, da diese in Access und SQL Server mit unterschiedlichen Genauigkeiten arbeiten. Access kann den Wert einer solchen Spalte nicht darstellen und gibt stattdessen in allen Spalten den Eintrag #Gelöscht aus.
Microsoft behandelt dieses Thema in dem Knowledgebase-Artikel Q128809.

/* übernommen aus der Original sqlfaq.de */

Temporäre Tabellen in ADP

Frage:
In ADP soll eine temporäre Tabelle angelegt werden.

Lösung:
In ADP gibt es keine Tabellen – auch keine temporären!
Hier sind die temporären Tabellen vom SQL Server zu verwenden. SQL Server bietet zwei verschiedene Varianten temporärer Tabellen – lokale (#) und globale (##). Temporäre Tabellen werden mittels CREATE TABLE angelegt. Näheres dazu hier oder in der Onlinehilfe.

/* übernommen aus der Original sqlfaq.de */

Berechtigungen auf Access-Objekte in ADP

Frage:
In Access 2000 ist es über den Menüpunkt Arbeitsgruppenadministrator möglich, Berechtigungen zu Formularen, Berichten, Modulen und Makros für Benutzer und Benutzergruppen zu vergeben. In ADP ist dieser Menüpunkt deaktiviert.

Lösung:
Die Vergabe von Berechtigungen ist in ADP nicht mehr enthalten.
Die Berechtigungen der Benutzer bzw. Benutzergruppen müssen in der SQL Server-Datenbank konfiguriert werden.

/* übernommen aus der Original sqlfaq.de */

Access (ADP) findet Gespeicherte Prozeduren nicht

Frage:
Die Gespeicherten Prozeduren einer SQL Server-Datenbank werden in einer ADP als spname;1 dargestellt.
Beim Öffnen einer solchen Gespeicherten Prozedur erscheint die Meldung Stored Procedure spname;1 nicht gefunden.

Lösung:
Um die
Gespeicherten Prozeduren korrekt anzeigen und auch öffnen zu können, muss das Service-Release 1/1a von Access installiert werden.
Im Knowledgebase-Artikel Q269824 wird das Problem genauer beschrieben.

/* übernommen aus der Original sqlfaq.de */

Access ADP in Citrix-Umgebung

Frage:
Bei Installation einer ADP in einer Citrix-Umgebung kann nur der erste Benutzer das Projekt ohne Fehlermeldung starten.
Jeder weitere Benutzer erhält die Meldung, dass das Projekt bereits geöffnet ist und daher nur schreibgeschützt geöffnet werden kann.

Lösung:
Die Fehlermeldung lässt sich verhindern, indem das ADP mit dem Zusatz /runtime gestartet wird.
Jedoch können durch diesen Zusatz keine Designänderungen mehr an dem Projekt vorgenommen werden.

/* übernommen aus der Original sqlfaq.de */

Access (ADP) – Serverfilter nicht änderbar

Frage:
In Access 2000 wird ein Formular über DoCmd.OpenForm mit einem Serverfilter geöffnet. Beim ersten Aufruf des Formulars schreibt sich dieser Serverfilter fest in die Formulareigenschaften und liefert ab nun immer dasselbe Ergebnis, egal welcher Serverfilter beim Öffnen des Formulars übergeben wird.

Lösung:
Hier hilft nur ein Workaround. Dabei wird der Serverfilter zusätzlich über die OpenArgs des DoCmd.OpenForm an das aufgerufene Formular übergeben.
Im geöffneten Formular muss der so übergebene Serverfilter mit dem Serverfilter in den Formulareigenschaften verglichen werden. Sofern sich die beiden unterscheiden, wird der Serverfilter aus den OpenArgs in die Formulareigenschaft geschrieben.

/* übernommen aus der Original sqlfaq.de */