![]() |
Datenbank: Access • Version: 2003 • Zugriff über: ADO
ADO Tabelle per Code Sperren und freigeben
Hallo zusammen,
ich habe ein Programm an dem mehrere Benutzer gleichzeitig arbeiten, daher muss ich eine Tabelle sperren und nach ablauf eines Algorithmus wieder freigeben. Ich hab hier schon gelesen, dass das per Lock funktionieren soll. Hat da jemand wohl einen Code? Hab ich hier leider nicht gefunden :oops:
Delphi-Quellcode:
Während dieser Procedure muss ich die Tabelle ADOEintragsID sperren und wieder freigeben.programmdb.ADOEintragsID.Open; programmdb.ADOEintragsID.First; eintragsID:=programmdb.ADOEintragsIDID.Value; programmdb.ADOEintragsID.Delete; try programmdb.ADOEintragsID.insert; programmdb.ADOEintragsIDID.Value:=eintragsID+1; programmdb.ADOEintragsID.Post; except MessageDlg('Fehler', mtError, [mbOK], 0); end; programmdb.ADOEintragsID.Close; Wäre für jede Hilfe sehr dankbar |
Re: ADO Tabelle per Code Sperren und freigeben
Kann mir da keiner helfen? :(
|
Re: ADO Tabelle per Code Sperren und freigeben
Wirklich niemand, der mir da wenigstens einen Tipp geben kann??
|
Re: ADO Tabelle per Code Sperren und freigeben
Hallo,
Zitat:
Schau in der Hilfe mal nach TADOLockType, ltPessimistic sollte für Dich das passende sein. Stephan |
Re: ADO Tabelle per Code Sperren und freigeben
Zitat:
Wie schreibt man das dann im Code?
Delphi-Quellcode:
So vielleicht?
programmdb.ADOEintragsID.LockType:=ltPessimistic;
Und wie gibt man die Tabelle wieder frei oder passiert das nach der Bearbeitung des Datensatzes automatisch? |
Re: ADO Tabelle per Code Sperren und freigeben
Hallo,
der Code sollte richtig sein und die Tabelle solange gesperrt, bis die aktuelle Transaktion abgeschlossen ist. Bitte ausprobieren, hab's selbst noch nicht benutzt und müsste jetzt auch raten. so in der Art?
Delphi-Quellcode:
Stephan
programmdb.ADOEintragsID.LockType := ltPessimistic;
programmdb.ADOEintragsID.Connection.BeginTrans; ... programmdb.ADOEintragsID.Connection.CommitTrans; |
Re: ADO Tabelle per Code Sperren und freigeben
Zitat:
|
Re: ADO Tabelle per Code Sperren und freigeben
Die Unit ADOdb ist eingebunden?
|
Re: ADO Tabelle per Code Sperren und freigeben
Zitat:
|
Re: ADO Tabelle per Code Sperren und freigeben
Vielen Dank für die Hilfe.
Eine Frage hab ich noch. Wenn der Datensatz dann gesperrt ist und ein anderer Benutzer dann zugreifen will, bekommt der dann eine Fehlermeldung mit "Der Datensatz ist momentan gesperrt" oder sowas, oder muss er einfach einen Moment länger warten bis der Datensatz wieder freigegeben ist. Ich kann das im Moment nicht testen, da sich das Netzwerk in der Uni befindet und ich es nicht immer zur Verfügung habe. sventeq |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz