einfache Datenbankabfrage ohne erstes Element

  • Themenstarter Themenstarter loogi
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
L

loogi

Gast
hallo,

ich bekomme wenn ich eine normale Datenabfrage mache alle Elemente der DB.
Speichere ich allerdings die Elemente in einem Array, so bekomme ich NIE das erste Element?? versteh nicht warum.. was mache ich den falsch?

hier der code:

normale Abfrage
Code:
try {

			conn = DatabaseLocator.getConnection();
			st = conn.createStatement();
			res = st.executeQuery("SELECT * FROM Person WHERE p_name LIKE '%"
					 + "müller" + "%'");

			while (res.next()) {

				System.out.println(res.getString("name"));
				System.out.println(res.getString("vorname"));
			}
		} catch (SQLException r) {
			r.printStackTrace();
			System.out.println(r.getCause());
		}
	}

Hier mit dem Array:
Code:
                       	Person[] ergebnis = new Person[200];
		
		
                        int countAR = 0;
			conn = DatabaseLocator.getConnection();
			st = conn.createStatement();
			res = st.executeQuery("SELECT * FROM  Person WHERE p_name LIKE '%"
					 + "müller" + "%'");
			if (!res.next()) {
				System.out.println("NO Person");
			}
			while (res.next()) {

				ergebnis[countAR] = new Person(res
						.getString("name"), res.getString("vorname");

				System.out.println(countAR);
				countAR++;

			}
		} catch (SQLException r) {
			r.printStackTrace();
			System.out.println(r.getCause());
		}return ergebnis;
 
if (!res.next()) {
// erster DatenSatz ausgewählt
}
while (res.next()) {
// zweiter DatenSatz ausgewählt
}


du musst also vorsichtig mit diesem Aufruf sein,
Tipp: verwende nur die while-Schleife,
wenn dahinter countAr == 0 ist, dann "NO Person"
 
SlaterB hat gesagt.:
if (!res.next()) {
// erster DatenSatz ausgewählt
}
while (res.next()) {
// zweiter DatenSatz ausgewählt
}


du musst also vorsichtig mit diesem Aufruf sein,
Tipp: verwende nur die while-Schleife,
wenn dahinter countAr == 0 ist, dann "NO Person"


ja stimmt super... :toll:
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben