ADO.NET und Z.B. Access

10/03/2008 - 13:09 von Marcel Eckert | Report spam
Hallo zusammen,

eine Access-Datenbank im Multiuserbetrieb, nach vielen, vielen Forensuchen
usw. bin ich nun am Punkt für folgende Frage (ADO habe ich noch nie benutzt,
nur ADO.NET muss ich dazu sagen):

Bei ADO konnte man wohl via Recordset den Pessimistic Lock einstellen, in
erster Linie prüfe ich in ADO.NET bei UPDATE oder DELETE Anweisungen zwar
alle Felder in der WHERE - Klausel ab (Optimistic-Lock?), jedoch sehe ich
keine Möglichkeit einen Pessimistic Lock einzustellen da es in ADO.NET keinen
Locktype und keinen serverseitigen Cursor mehr gibt. Habe dann geglaubt wenn
ich eine Transaction für meine UPDATE oder DELETE Befehle nutze würde ich dem
Pessimistic Lock im groben entsprechen. (Bei "echten" DB-Systemen mit Server
ist Optimistic ja sicher genug)

Die direkte Frage ist: Habe ich so den Multiuserbetrieb einer Access-DB auf
einem Netzlaufwerk im Griff oder habe ich hier noch was vergessen? Falls
einige der o. g. Punkte so nicht korrekt sind bitte ich auch um Info.

Grüße

Marcel
 

Lesen sie die antworten

#1 Peter Fleischer
10/03/2008 - 15:14 | Warnen spam
"Marcel Eckert" schrieb im
Newsbeitrag news:

Bei ADO konnte man wohl via Recordset den Pessimistic Lock einstellen, in
erster Linie prüfe ich in ADO.NET bei UPDATE oder DELETE Anweisungen zwar
alle Felder in der WHERE - Klausel ab (Optimistic-Lock?), jedoch sehe ich
keine Möglichkeit einen Pessimistic Lock einzustellen da es in ADO.NET
keinen
Locktype und keinen serverseitigen Cursor mehr gibt.



Hi Marcel,
ADO.NET arbeitet disconnected und damit mit optimistischem Cursor.

Habe dann geglaubt wenn
ich eine Transaction für meine UPDATE oder DELETE Befehle nutze würde ich
dem
Pessimistic Lock im groben entsprechen. (Bei "echten" DB-Systemen mit
Server
ist Optimistic ja sicher genug)



Nein, eine Transaktion sicher nur, dass paralele Zugriffe/Verànderungen
zeitweilig verzögert werden. Das hat mit pessimistischem Cursor nichts zu
tun.

Die direkte Frage ist: Habe ich so den Multiuserbetrieb einer Access-DB
auf
einem Netzlaufwerk im Griff oder habe ich hier noch was vergessen? Falls
einige der o. g. Punkte so nicht korrekt sind bitte ich auch um Info.



Der Zugriff auf eine Access-Datei ist immer ein Ein-Nutzer-Betrieb. Wenn da
zufàllig mehrere Nutzer eine Datei auf einem Dateiserver nutzen, dann werden
diese Zugriffe vom Dateiserver serialisiert. Das hat aber nichts mit einem
Mehrnutzerbetrieb eines Datenbankservers zu tun, da die Jet als
Zugriffsprovider immer nur lokal im Einnutzer-Betrieb arbeitet. Das alles
sollte man berücksichtigen.

Viele Gruesse

Peter

Ähnliche fragen