Hallo,

einiges ist mir so selbstverständlich, dass ich nix dazu geschrieben habe. Commit Verwendung macht eigentlich nur mit embedded SQL und Schichtentrennung Spass und dann wird immer Committed bevor die Steuerung aus der Datenbank-Zugriffs Schicht nach oben geht und das war's.

Dieter

Zitat Zitat von B.Hauser
Noch ein paar weitere zusätzliche Anmerkungen:
Wenn man mit Commitment Control und RPG arbeitet, muss man wissen, das ein UNLOCK bzw. die Erweiterung (N) beim Chain oder Read einen Satz nicht freigibt, sondern immer nur ein Commit oder Rollback.

So schön die Commitment Control auch sein mag, sie erfordert ein zusätzliches Mass an Überlegung, nämlich wann und wo die Commits gesetzt werden. Da sind Programme schon Stunden gelaufen, haben alles blockiert, wurden abgebrochen und liefen nochmal solange bis sie beendet waren und haben dabei auch noch die Platte vollgeschrieben.
Und nur weil an irgend einer Stelle ein kleiner unschuldiger COMMIT vergessen wurde.

Der ganze Zauber mit Zugriff über relative Satz-Nr. ist spätestenfalls dann passé, wenn die Dateien mit SQL angelegt werden. SQL kennt kein REUSEDLT(*NO)! Allerdings kennt SQL (seit Release V5R2M0) ROWID oder IDENTITY COLUMNS über die eindeutige "Zähler" generiert werden können. Über beides kann ein Index gelegt werden, wodurch der Zugriff über "Relative Satz-Nr." simuliert werden kann.

Birgitta