28. november 2002 - 08:39Der er
5 kommentarer og 1 løsning
For mange id'er
Vi kan nu udskrive id, men den udskriver mange flere tal end vi har. vi bruger denne kode: public void hentId() throws SQLException { String query = "SELECT id FROM PROFIL"; ResultSet rs = stmt.executeQuery(query); while (rs.next()) { String s = rs.getString("id"); System.out.println("BRUGERENS ID ER" + s);
Vi har kun tre rækker i "profil" og derfor burde den vel kun skrive tre id'er ud. Istedet skriver den:
BRUGERENS ID ER1 BRUGERENS ID ER2 BRUGERENS ID ER3 BRUGERENS ID ER4 BRUGERENS ID ER5 BRUGERENS ID ER6 BRUGERENS ID ER7 BRUGERENS ID ER8 BRUGERENS ID ER9 BRUGERENS ID ER10 BRUGERENS ID ER11 BRUGERENS ID ER12 BRUGERENS ID ER13 BRUGERENS ID ER14 BRUGERENS ID ER15 BRUGERENS ID ER16 BRUGERENS ID ER17 BRUGERENS ID ER18 BRUGERENS ID ER19 BRUGERENS ID ER20 BRUGERENS ID ER21 BRUGERENS ID ER22 BRUGERENS ID ER23 BRUGERENS ID ER24 BRUGERENS ID ER25 BRUGERENS ID ER26 BRUGERENS ID ER27 BRUGERENS ID ER28 BRUGERENS ID ER29 BRUGERENS ID ER30 BRUGERENS ID ER31 BRUGERENS ID ER32 BRUGERENS ID ER33 BRUGERENS ID ER34 BRUGERENS ID ER35 BRUGERENS ID ER36
.... og det er måske lidt vildt. Hvad gør vi forkert?
Har du verificeret at en count(*) giver 3 (bemærk jeg har ændret koden men ikke testet den).
String query = "SELECT count(*) as idcount FROM PROFIL"; ResultSet rs = stmt.executeQuery(query); rs.first(); String s = rs.getString("idcount"); System.out.println("ANTAL RÆKKER ER " + s);
Hvis den giver 3, kunne jeg tænke mig hvis du kunne vise mig create scriptet for tabellen (den SQL der lavede tabellen - sikkert noget i stil med "create table PROFIL ... ect. ")
Vi er lidt i tvivl om hvad du mener med at verificere at count'en er 3.. Skal vi skrive det et sted? Den giver ikke tre når den skriver ud, men ligger i stedet tre til, hver gan vi kører programmet.
Selvfølgelig får du mere end 3 ud, du har jo mange flerer poster i tabellen.
Din tabel har 3 kolonner men mange poster.
Så alt virker som det skal.
Synes godt om
Ny brugerNybegynder
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.