# JDBC-Cache leeren?



## McTrevor (10. Jul 2007)

Hallo,

ich habe derzeit ein Problem und ich vermute, es rührt daher, daß JDBC ein ResultSet cached.

Die Situation ist folgende: Mittels 
	
	
	
	





```
SELECT COUNT (*) FROM user.table WHERE condition
```
 bestimme ich die Menge der Einträge die der Bedingung genügen. Danach füge ich in die Tabelle mittels JDBC eine weitere Zeile ein, die ebenfalls die Bedingung erfüllt. Danach beende ich das Programm!

Über die Konsole entferne ich den eben gemachten Eintrag aus der Tabelle und starte das Programm erneut. Nun liefert mir der Aufruf aber einen um 1 größeren Wert als zuvor zurück, obwohl der zusätzliche Eintrag von mir gelöscht wurde.
Über die Konsole erhalte ich mit exakt derselben Abfrage den richtigen (gewünschten Wert).

Woran liegt das? Ich vermute, daß irgendiwe das ResultSet auf der Client Seite gecached wurde. Aber wo genau und wie kann man das gezielt abschalten?

Bis dann denn!

McTrevor


----------



## SlaterB (10. Jul 2007)

vielleicht hat die 'Konsole' noch eine Transaktion offen,
für andere Benutzer ist dann diese Änderung noch nicht sichtbar


----------



## McTrevor (10. Jul 2007)

Genau das war es! In der Konsole habe ich nicht commited, daran lag es. Da bei JDBC Auto-Commitment der Standard ist, habe ich daran gar nicht gedacht.

Bis dann denn!

McTrevor


----------

