Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 3.329 pregleda

Najnovija ↓

Problem sa radom sa bazom iz jave 06.09.2009. u 23:17 · pre 208 meseci #1
Pokusavam da dohvatim maksimalnu vrednost primarnog kljuca jedne tabele sledecom naredbom

upit="SELECT MAX(pid) FROM poslovi;";
rs=stmt.executeQuery(upit);
long l=rs.getLong("pid");
i baci mi izuzetak da kolona "pid" ne postoji.Pokusao sam i sa upit="SELECT MAX(pid) AS maksimum FROM poslovi;"; ali opet nece.
Potpis
Kad covjeka napusti Sunce njegovog zavicaja ko ce mu posvijetliti na putu povratka
Re: Problem sa radom sa bazom iz jave 07.09.2009. u 04:39 · pre 208 meseci #2
Mislim da bi kod trebalo ovako da izgleda:
Code:

upit="SELECT MAX(pid) AS maksimum FROM poslovi;";
rs=stmt.executeQuery(upit);
long l=rs.getLong("maksimum");


U tvom konkretnom slucaju upit ce vratiti tabelu sa jednim redom i jednom kolonom, gde je naziv kolone "maksimum". Da nismo koristili alias, naziv kolone bi najverovatnije bio MAX(pid), ali to moras sam probati, u SUBP-u koji koristis. :) U tom slucaju bi umesto "maksimum", metodi getLong prosledio "MAX(pid)", sto je i logicno, je li. :D
Re: Problem sa radom sa bazom iz jave 07.09.2009. u 16:11 · pre 208 meseci #4
Exception baca kad radim getLong ali posto uradim agregatnu funkciju MAX.Kad radim na tabeli iz baze sve radi.
Mislim da je u pitanju driver ali nisam siguran
Potpis
Kad covjeka napusti Sunce njegovog zavicaja ko ce mu posvijetliti na putu povratka
Re: Problem sa radom sa bazom iz jave 07.09.2009. u 20:14 · pre 208 meseci #5
Citat:
glamoc: Pokusavam da dohvatim maksimalnu vrednost primarnog kljuca jedne tabele sledecom naredbom

upit="SELECT MAX(pid) FROM poslovi;";
rs=stmt.executeQuery(upit);
long l=rs.getLong("pid");
i baci mi izuzetak da kolona "pid" ne postoji.Pokusao sam i sa upit="SELECT MAX(pid) AS maksimum FROM poslovi;"; ali opet nece.

Pa kolona pid ti i ne postoji. Tabela koju ti upit vrati izgleda ovako
---------------------
- MAX(pid) -
---------------------
- 23 -
---------------------
Znači ova poslednja linija tvog koda treba da izgleda ovako:
long l = rs.getLong("MAX(pid)");
A i mogao bi da čekiraš:
if(rs.next()){
//bla bla bla
}
jer ako nemaš podataka u bazi... imaš exception.
Potpis
Rad rad i samo rad :-D
Re: Problem sa radom sa bazom iz jave 12.09.2009. u 19:50 · pre 208 meseci #6
Nemam vremena da probam ali mislim da pi pre nego kazes .getLong() morao jednom da kazes rs.next() da ti se pokazivac result setu pozicionira na prvi red jer je posle upita on ispred istog.

poz
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme