JDBC/Povpraševanje po podatkih v tabeli

Iz MaFiRaWiki

Ta članek ali del članka je v delu. Veseli bomo, če ga boste dopolnili in popravili.

Kaj pomeni to opozorilo?


Ko že imamo ustvarjeno povezavo do podatkovnega strežnika in narejeno tabelo s podatki, moramo ustvariti objekt tipa Statement, da lahko pošiljamo ustrezne SQL stavke do strežnika, ki jih le ta izvrši.

Objekt Statement mora biti ustvarjen iz objekta Connection na sledeč način:

 
Statement stavek = povezava.createStatement();

Nato nad njim lahko z executeQuery izvajamo ukaze v SQL. ustrezen ukaz za povpraševanje po podatkih je SELECT.

 
ResultSet rs = stavek.executeQuery("SELECT * FROM imeTabele");

Zapomnimo si, da metoda executeQuery vrne objekt razreda ResultSet.

Ko SQL stavek vrne podatek iz relacijske podatkovne baze, potem podatek imenujemo nabor rezultatov (ang. result set).

ResultSet postavimo pred prvo vrstico nabora rezultatov. Metoda next() nam omogoči, da pridobimo rezultate, shranjene v prvi vrstici, nato rezultate, shranjene v drugi vrstici in tako naprej, dokler nam ne zmanjka vrstic. Ko nam zmanjka vrstic, metoda next() vrne vrednost false. Da bi se temu izognili, naredimo while zanko, katera izpiše vse vrstice v tabeli:

 
while {
// napišemo ustrezno kodo, ki nam naredi kar si želimo narediti
// z vrstico
}

Če želimo pridobiti katerikoli stolpec podatkov iz tekoče vrstice nabora rezultatov, uporabimo metode getInt(), getString(), itd., odvisno kar želimo pridobiti. Te metode imajo kot parametre določene ime stolpca ali pozicijo stolpca, ki so sorodne SQL navedbam.

Lahko povprašujemo po podatkih, kjer omenimo pozicijo stolpca:

 
int a = rs.getInt(1);
String str = rs.getString(2);

Ali pa ime stolpca:

 
int a = rs.getInt("imeStolpca");
String str = rs.getString("imeStolpca");
Osebna orodja