Frage zu ResultSet

J

jUser15061989

Gast
Hallo!

Folgende Frage zum folgenden Code:

Java:
Statement stmt;
ResultSet rs;

stmt.execute("select pnr, pname, alter from person");

rs = stmt.getResultSet();
rs.last();
System.out.println(rs.getRow());

rs.moveToInsertRow();
rs.updateObject(1, 10);
rs.insertRow();

rs.last();
System.out.println(rs.getRow());

Bei beiden Ausgaben erhalte ich das gleiche Ergebnis. D.h. wenn z.B. zuvor 9 Zeilen in der Tabelle vorhanden sind, wird auch nach
Code:
rs.insertRow();
die Zahl 9 ausgegeben.

In der Datenbank wurde die Zeile jedoch korrekt eingefügt.
Gibt es eine Möglichkeit, dass durch obigen Code auch im ResultSet die Anzahl der Zeilen um 1 erhöht wird?
 

turtle

Top Contributor
Nein, das wird nicht so einfach gehen.

Und der Grund ist der sogenannte Isolation-Level der JDBC-Verbindung zur Datenbank.

Das bedeutet, dass Du angegeben kannst wieviel Parallelität Du zulassen kannst (Concurrency) und wieviel Performance Du möchtest. Dies sind oft zwei Dinge, die teilweise gegeneinander arbeiten. Häufig wird der Default Isolation Level TRANSACTION_REPEATABLE_READ benutzt. Dieses bedeutet, dass ein Client (dein Programm) nur bereits committede Daten sehen kann. Dies ist bei deinem Test der Fall, da Du in einer Transaktion die Datengrundlage änderst, indem Du Daten einfügst. Diese sind aber noch nicht committed und daher noch nicht im bereits offenen ResultSet sichtbar. Machst Du den Select noch einmal, sollte die Zeile im ResultSet sichtbar sein, da ich auch nicht sehe, dass Du Dich besonders um Transaktionsgrenzen kümmerst.

Wie Du aus den Anmerkungen merkst ist dieses Thema Transaktionen bei DB sehr wichtig und ein Ändern des Verhaltens solltest Du nur machen, wenn Du genau weisst, was Du damit "anrichtest"
 
N

nillehammer

Gast
[OT]
Java:
stmt.execute("select pnr, pname, alter from person");
Nur so interessehalber, mit welchem DBMS hast Du es hingekriegt, eine Tabelle zu erstellen, die eine Spalte namens "alter" hat?
[/OT]
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Frage zu PreparedStatement/ResultSet Datenbankprogrammierung 16
M Frage zu Bundesliga-DB Datenbankprogrammierung 1
pkm Frage zu Encodingproblem bei einer Datenbankanbindung Datenbankprogrammierung 1
B Frage bei einer SQL Query Datenbankprogrammierung 3
B Frage zu Datenbank Design bei Events (ZenDesk) Datenbankprogrammierung 1
B SQLite Frage zu SQLite Datenbankverbindung Datenbankprogrammierung 7
M Frage zu JSON Datenbankprogrammierung 16
Psypsy Hibernate / JPA OneToOne MappedBy Frage Datenbankprogrammierung 2
P Frage zu Connection.close() Datenbankprogrammierung 4
R MySQL Frage zum Anlegen von Artikeln inkl. Verbindungen Datenbankprogrammierung 0
M Grundlegende Klassen-Design Frage Datenbankprogrammierung 0
P MySQL Frage zur Einbindung in ein Java Projekt Datenbankprogrammierung 2
I Frage zu Datenmodellierung Datenbankprogrammierung 3
J Normalisierung - Allgemeine Frage zur 3. Normalform (Eventuelle Abhängigkeit) Datenbankprogrammierung 4
F Normalisierung Datenbank Frage Datenbankprogrammierung 5
W Frage zur Datenbankwahl bei Umstieg auf Java Datenbankprogrammierung 7
D Frage zu DISTINCT in SQL Datenbankprogrammierung 5
K Frage zur Datenprotokollierung bei DML Anweisungen Datenbankprogrammierung 3
K Frage zu SQL Datenbankprogrammierung 2
L PostgreSQL Hibernate-Frage Datenbankprogrammierung 2
K Frage zu Datenbankmodellierung Datenbankprogrammierung 15
D Generelle Frage zum Umgang mit Datensätzen Datenbankprogrammierung 5
L Frage zu UpdateQuery Datenbankprogrammierung 12
8 MySQL Kurze Frage zur Sicherheit Datenbankprogrammierung 9
D Frage zu INSERTS über mehrere Datenbanktabellen Datenbankprogrammierung 3
D Frage zu Ausführungsmöglichkeiten von SQL Befehlen Datenbankprogrammierung 13
D Frage zu SQL Syntax Datenbankprogrammierung 17
D Frage zu potenziellen Leerzeichen in einer Datenbank Datenbankprogrammierung 5
X Connection schließen oder speichern? Performance Frage Datenbankprogrammierung 7
J mal wieder eine Frage zu parallelen Transaktionen.. Datenbankprogrammierung 2
V Frage zu Hibernate-Mapping Datenbankprogrammierung 11
N Allg. Frage zur Datenbankverbindung Datenbankprogrammierung 2
E einfache Frage bei DB-Zugriff Datenbankprogrammierung 11
S MySQL Frage zu LeftJoin Abfrage Datenbankprogrammierung 2
O eigentlich simple SQL Frage Datenbankprogrammierung 2
M Frage zu folgender Query in EJB-QL Datenbankprogrammierung 4
H JBoss: Frage zur Datasource in der ...-ds.xml Datenbankprogrammierung 4
F Frage zu Prepared Statement Datenbankprogrammierung 2
R hibernate Frage zu configFile-Pfad und Groß/Kleinschreibung von Postgres-Tabellen Datenbankprogrammierung 8
U Frage zum Erfassen von hinzufügten und entfernten Objekten Datenbankprogrammierung 9
M prinzipielle Frage zu Datenbanken und jars ... Datenbankprogrammierung 2
S Hibernate - spezielle Frage, n zu n Beziehung Datenbankprogrammierung 11
J Frage zu Synchronisation bei parallelem Zugriff, speziell mit JPA Datenbankprogrammierung 2
F EclipseLink persistence.xml Frage Datenbankprogrammierung 11
N Frage zur Sicherheit von Konfigurationsdatei Datenbankprogrammierung 4
H performance frage Datenbankprogrammierung 9
G Frage zum Insert-Statement Datenbankprogrammierung 2
Antoras Design-Frage: Datenzuordnung zu verschiedenen Accounts Datenbankprogrammierung 2
T HSQL: verständnis Frage Datenbankprogrammierung 2
T Java JPA Frage bzgl. DISTINCT Datenbankprogrammierung 2
G Frage zu connection? Datenbankprogrammierung 9
A Frage zu SQL-Abfrage Datenbankprogrammierung 2
G Frage zu SQL "WHERE IN (1, 2, 3. , N)" Datenbankprogrammierung 8
G Allgemeine Frage zu Datenbanklimits Datenbankprogrammierung 27
G allgemeine JDBC-Connection Frage Datenbankprogrammierung 2
G Frage zu Hibernate und M:N Beziehung Datenbankprogrammierung 9
K HQL Frage Datenbankprogrammierung 10
D kurze Frage zu einem Query Datenbankprogrammierung 6
B Hibernate mit MySql - Verständniss Frage Datenbankprogrammierung 8
N Kleine Frage zu Connection Pooling mit DataSource Datenbankprogrammierung 2
T Update-Frage Datenbankprogrammierung 11
E SQL-Frage (Löschen aller Datensätze) Datenbankprogrammierung 9
P Frage zu Performancetest einer Datenbank Datenbankprogrammierung 3
W Frage zum Umgang mit DB-Daten Datenbankprogrammierung 2
E Nochmal eine Datenbankabfrage Frage :-o (JOIN oder so) Datenbankprogrammierung 4
P frage zu "" bei INSERT STATEMENTS Datenbankprogrammierung 2
K frage zum ausführen eines INSERT statements Datenbankprogrammierung 16
L frage zu mySQL Datenbankprogrammierung 4
C Mal ne Frage an die Experten Datenbankprogrammierung 4
G Frage zum Datenbankdesign Datenbankprogrammierung 5
J DB Verbindung Design Frage Datenbankprogrammierung 5
M Datenbankanbindung in Java : Newbie-Frage Datenbankprogrammierung 2
U Grundsätzliche Frage Datenbankprogrammierung 4
S Frage zu INSERT Datenbankprogrammierung 2
X Wieder mal ne Frage ... Datenbankprogrammierung 15
S ResultSet als Parameter an andere Klasse übergeben Datenbankprogrammierung 3
Z ResultSet ist null warum? Datenbankprogrammierung 12
R HSQLDB ResultSet update aktualisiert DB, aber nicht das ResultSet Datenbankprogrammierung 2
Dimax Erstellen ResultSet und Statement Datenbankprogrammierung 30
C PostgreSQL ResultSet.TYPE_SCROLL_SENSITIVE setzen Datenbankprogrammierung 2
L MySQL Bekomme einen Fehler beim ResultSet Datenbankprogrammierung 12
L Zugriff auf ein Resultset Datenbankprogrammierung 7
L MySQL ResultSet vollständig auslesen Datenbankprogrammierung 20
D Resultset schließen ?? Datenbankprogrammierung 5
T Oracle Resultset to Array sehr langsam. Datenbankprogrammierung 8
B Probleme mit java.sql.SQLException: ResultSet closed Datenbankprogrammierung 21
J SQLite ResultSet closed -- Wiederholende DB-Abfragen Datenbankprogrammierung 6
Z MySQL Probleme mit resultSet executQuery Datenbankprogrammierung 3
L ResultSet Datenbankprogrammierung 1
J wie mit resultset.next() über Datensätze iterieren? Datenbankprogrammierung 15
R MySQL Umgang mit ResultSet/Fremdschlüssel ausgeben Datenbankprogrammierung 2
D MySQL ResultSet als Stream weiter geben Datenbankprogrammierung 9
M ResultSet Cachen Datenbankprogrammierung 3
R ResultSet mit "Untertabellen" Datenbankprogrammierung 4
N SQL-Statement Auslesen des Resultset wird immer langsamer Datenbankprogrammierung 6
R Resultset.last() Problem Datenbankprogrammierung 12
PaulG Leeres ResultSet initialisieren Datenbankprogrammierung 6
J SQL ResultSet Previous Datenbankprogrammierung 10
S MySQL ResultSet in ein Array übertragen Datenbankprogrammierung 7
H PostgreSQL Objekte aus ResultSet Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben