Datensatz sperren

Suarts

Neuer Benutzer
Beiträge
3
Hallo zusammen, brauche eure Hilfe.
In meiner Db habe ich ein Endlosformular, indem ich im aktuellen Datensatz im laufe der Schicht immer wieder Daten ändere.
Am Ende der Schicht möchte ich jetzt mit einem Button den Datensatz sperren, damit er nicht mehr verändert werden kann.

Ich danke euch für Hilfe und Anregungen.
Gruß
 
Werbung:
Am Ende der Schicht möchte ich jetzt mit einem Button den Datensatz sperren
Einen "Datensatz sperren" ist je nach perspektive eine falsche/missverständliche Begrifflichkeit.
Eine Datensatzsperre erfolgt im Rahmen einer Transaktion während der Änderung eines Datensatzes und automatisch. Sie verhindert, dass andere Zugriffe in diesem Moment ebenfalls Änderungen vornehmen.

Du möchtest einen Schreibschutz für den Datensatz realisieren?
Denke Dir eine Logik aus, die das leistet. Es kann eine Spalte sein, die einen Wert für schreibschutz (ja / nein) bietet.
Wenn bereits vorhandene Angaben diese Information automatisch liefern, z.B. Angaben zur Schicht, Tageszeit, o.ä., dann kann man den logischen Schreibschutz auch darüber realisieren. Um 6 ist die Schicht zuende: Schreibschutz.
Dein Programm muss das entsprechend überwachen und befolgen, also eine VBA Lösung.

Solche Mechanismen sind allerdings nur dann wasserdicht, wenn die Laufzeitumgebung eine Umgehung zuverlässig unterbindet. In einer relationalen DB ist das kein Problem und auch nicht sehr teuer (Ressourcenaufwand). In Access bin ich da nicht auf dem Laufenden. Gut wäre vermutlich, wenn Access gar nicht selbst die Daten verwaltet, sondern ein RDBMS dahinter liegt, das diese Regel per Trigger überwacht.
 
Einen Datensatz unveränderbar zu machen ist wohl in jedem DB-System unmöglich. Irgendeine Bitpistole gibt es immer. Bleibt wohl nur die Blockchain. Aber ob das hier tatsächlich gefordert ist? Ich denke er möchte einfach die Daten so festschreiben, dass sie nicht mehr versehentlich geändert werden. Da sind die Vorschläge gemacht.
Das Ja/Nein - Häkchen ist wohl die einfachste Lösung. Bei einem Zeitstempel wird es mit Überstunden schwierig.
Ansonsten sind der Phantasie kaum Grenzen gesetzt. (Verschlüsselung, Spiegelung in ein weiteres, unsichtbares Backend, u.ä. ). Aber ob Access für Hochsicherheitsanforderungen das Mittel der Wahl ist, bezweifle selbst ich als Access-Fan.

Die gegeben Infos sind auch etwas dürftig. Ist es immer derselbe Datensatz der ständig geändert wird. Oder, ist es eine Art Protokoll, wo immer neue Sätze hinzukommen, also Haupt- und Unterformular?
 
Zuletzt bearbeitet:
Werbung:
. Irgendeine Bitpistole gibt es immer.
Na klar- ich wollte einfach nur darauf hinweisen, dass es verschiedene gute Schutzmöglichkeiten gibt (und entsprechend niedrige oder hohe Hürden, es zu umgehen)
Wenn es nur um versehentliche Fehleingaben geht, geschenkt, wenn Zeitdaten im Spiel sind, da wächst dann schon das Manipulationsrisiko.
Aber auch einfach so ist immer die Frage, wie sicher eigentlich die Eingaben / Daten sind, anhand derer ich da Fertigstellungstermine oder Materialbedarf berechne...
Ein simples Endlosformular riecht halt auch etwas nach simpler Gesamtlösung. Man macht also die Originaltabelle auf und tippt ein, was man möchte / vergessen hat / der Chef sehen will...
Eine Triggerlösung auf der Tabelle eines separaten Servers ist da sicher robuster. Solche Systeme gibt es ja nicht aus Zufall.
 


Schreibe deine Antwort....
Zurück
Oben