Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Commit-Steuerung bei PreparedStatements

Empfohlene Antworten

Moin zusammen!

Könnt ihr mir mal eure Erfahrungen mit eigener Commit-Steuerung bei PreparedStatements in Zusammenhang mit einer Oracle-DB posten?

Bei mir will das nicht so recht funktionieren...

Mal klappt es, mal nicht....

Schreibe ich in mehrere Tabellen, haben commit oder rollback irgenwie keine Auswirkungen...

Hallo,

sollte eigentlich kein Problem sein. Bist Du sicher dass Du einen aktuellen JDBC-Treiber benutzt ? Hast Du in Deinem DataSource/ConnectionPool autoCommit="false" ? Poste doch mal ein Stück von Deinem Source..

Der Treiber sollte schon der aktuellste sein, kommt direkt von Oracle9.2 und autocommit ist auf false...

Versuche es mal an einem Bsp zu erklären....

Gegeben sind 5 Tabellen, in die ich innerhalb einer Transaktion mit 5 versch. PreparedStatements schreibe..

Nach jeder Transaktion (also dem schreiben in die 5 Tabellen) soll ein commit erfolgen.

Schreibe ich nur einmalig in die Tabellen, lässt sich am Ende auch ein rollback erzwingen, versuche ich den Vorgang allerdings beliebig oft und versuche an einer bestimmten Stelle ein rollback, werden die Daten doch in die Tabellen geschrieben.....

:( :( :(

Du wechselst aber nicht zwischendurch die Connection oder?

Gruß Jaraz

Die Connection bleibt die ganze Zeit die selbe....

Ich habe eine Connection für SELECTs und eine Connection für UPDATEs....

Habe bislang nur bei der für UPDATEs den AutoCommit deaktiviert, werd den mal bei beiden deaktivieren, glaube aber nicht, ob das ne Auswirkung hat...

Mal schaun...

Hi,

du hast in deinem letzten Statement geschrieben :

Schreibe ich nur einmalig in die Tabellen, lässt sich am Ende auch ein rollback erzwingen, versuche ich den Vorgang allerdings beliebig oft und versuche an einer bestimmten Stelle ein rollback, werden die Daten doch in die Tabellen geschrieben.....

Wenn ich das richtig verstehe, schreibst du deine Daten und setzt dann ein commit ab, oder?

Wenn das so ist, dann wird nach meiner Meinung der rollback immer nur bis zum letzten commit funktionieren, wenn ich es falsch verstehe, dann weiß ich leider auch nicht.:rolleyes:

Also irgendwie funktioniert das alles nicht...

Bei beiden Connections hab ich das Autocommit deaktiviert, aber er ignoriert gnadenlos den rollback Aufruf.

Eigentlich sollte er, wenn die schreiben-Methode einen Fehler liefert , ein rollback ausführen, ansonsten den commit. Und trotz rollback-Aufruf sind die Daten in der DB.

Sehr mysteriös das ganze....

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.