Avatar billede 2c Nybegynder
29. august 2003 - 13:25 Der er 3 kommentarer og
1 løsning

DB Resultset

ResultSet rs = stmt.executeQuery(query);

Er der en funktion så jeg kan finde ud af hvor mange rows der er i mit resultset ?
Avatar billede arne_v Ekspert
29. august 2003 - 13:30 #1
Normalt så laver man en:
  SELECT COUNT(*) FROM tabel
query først og henter antallet der.

Ellers kan du lave et både-frem-og-tilbage result set og så positionere dig
til sidst og læse row number.

Det sidste kan ikke anbefales generelt, da de fleste JDBC implementationer
så læser alle data op i memory.
Avatar billede arne_v Ekspert
29. august 2003 - 13:33 #2
Der er en createStatement metode med 2 argumenter, hvor man kan angive
result set'ets type.
Avatar billede 2c Nybegynder
29. august 2003 - 13:36 #3
nårja, selvfølgelig.

Jeg kommer lige fra c#, og der er der en funktion på datasettet der hedder count, så jeg havde vænnet mig til det.
Avatar billede arne_v Ekspert
29. august 2003 - 13:48 #4
Du skal være opmærksom på at er ResultSet ikke indeholder data men
kun en cursor.

D.v.s. at hvis du lukker connection, så er ResulTset invalidt.

Hvis data er tilpas små til at du ikke er bekymret for at have det i memory, så
er et ResultSet med TYPE_SCROLL_INSENSITIVE måske en løsning.

Ellers så er der et addon til JDBC på vej der hedder JDBC RowSet (og du kan
godt finde implementationer af det).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester