# Datenbanken schützen vor Zugriff



## Bouyo (30. Aug 2012)

Ich habe folgendes Problem:

Ich habe eine Datentabelle. Der erste Eintrag in diese Tabelle bekommt bestimmte Wert.

Soweit so gut, jetzt könnte aber rein theoretisch folgendes passieren, dass die Ausführung der Funktion von Benutzer A und B überlagert werden.

Also im Prinzip folgendes:

- A ermittelt die Anzahl der Einträge der Tabelle
- B ermittelt die Anzahl der Einträge der Tabelle
- A fügt 1. Eintrag in die Tabelle ein
- Für B wären es immer noch keine Einträge in der Tabelle, und
  würde demzufolge die INSERT-Anweisung für ersten Eintrag
  ausführen, was allerdings falsch wäre.

Jetzt frag ich mich wie ich dieses Problem unter *Spring JDBC * umgehen könnte. ???:L???:L???:L :rtfm:


----------



## Marcinek (30. Aug 2012)

Dann muss LockMode auf Table stehen, dann würde in zwei Transaktionen es nicht möglich sein die Tabelle zu verändern.

Oder du machst eine PK / Unque Key Restriction


----------



## maki (30. Aug 2012)

Schlagwörter wären Transaktionen, nämlich atomare, konsistente, isolierte und natürlich dauerhafte, kurz: ACID

ACID - Wikipedia, the free encyclopedia


----------



## bone2 (3. Sep 2012)

Bouyo hat gesagt.:


> Ich habe eine Datentabelle. Der erste Eintrag in diese Tabelle bekommt bestimmte Wert.


Hat der zweite Eintrag andere Werte? Also logisch, inhaltlich? Alle Einträge einer Tabelle sollten vom gleichen Typ sein.


----------

