Šta je novo?

problem u javi sa resultset-om i jdbcodbcdriver-om...

Učlanjen(a)
01.12.2007
Poruke
4
Poena
301
unapred se izvinjavam ukoliko je neko nesto slicno vec pitao, ili ako je ovo totalno banalan problem (sto ja imam osecaj da jeste)


naime, juce sam radila nesto sto vec radim neko vreme...
deo koda (da ne gusim dalje):

/* deo koda koji otvara konekciju ka bazi*/

public void otvoriBazu()
{

String urlBaze;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
urlBaze="jdbc😱dbc:krediti";
con=DriverManager.getConnection(urlBaze);
con.setAutoCommit(false);
}catch(ClassNotFoundException cnfe)
{
System.out.println("Drajver nije ucitan: "+cnfe);
}catch(SQLException sqle)
{
System.out.println("Greska kod konekcije sa bazom: "+sqle);
}catch(SecurityException se)
{
System.out.println("Greska zastite: "+se);
}
}

u ovom delu koda on ne uhvati nikakvu gresku... naime, kada zapocne sledecu metodu

public Vector<Klijent> vratiSveKlijente() {

String upit;
ResultSet rs;
Vector<Klijent> lista=new Vector<Klijent>();
try
{
st=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
upit="SELECT * FROM Klijent ORDER BY Prezime, Ime";
rs=st.executeQuery(upit);
rs.beforeFirst();
while(rs.next())
{
Klijent k=new Klijent();
k.napuni(rs);
lista.add(k);
}
rs.close();
st.close();
}catch (Exception e) {
System.out.println("Greska kod vracanja svih klijenata iz baze!");
e.printStackTrace();
}
return lista;
}


on u debug-u prikaze sledece: [Microsoft][ODBC Microsoft Access Driver]Option value changed // zaista ne znam sta je ovo,prvi put se sa tim susrecem...

dalje, kako ide kroz ovu metodu za vracanje klijenata, (da napomenem da metoda napuni(rs) ima sledeci kod :

public boolean napuni(ResultSet rsslog)
{
try
{
JMBG=rsslog.getString("JMBG");
IdStrucneSpreme=rsslog.getInt("IdStrucneSpreme");
ZipCode=rsslog.getInt("ZipCode");
ZipCode1=rsslog.getInt("ZipCode1");
Ime=rsslog.getString("Ime");
Prezime=rsslog.getString("Prezime");
ImeRoditelja=rsslog.getString("ImeRoditelja");
DatumRodjenja=rsslog.getString("DatumRodjenja");
Adresa=rsslog.getString("Adresa");
TelefonMobilni=rsslog.getString("TelefonMobilni");
TelefonFixni=rsslog.getString("TelefonFixni");
BrLk=rsslog.getString("BrLk");
Drzavljanstvo=rsslog.getString("Drzavljanstvo");
BrojPasosa=rsslog.getString("BrojPasosa");
Email=rsslog.getString("E-mail");
Zanimanje=rsslog.getString("Zanimanje");
KontaktOsoba=rsslog.getString("KontaktOsoba");
Pol=rsslog.getString("Pol");
}catch (Exception e) {
System.out.println("Greska u konverziji podataka!");
e.printStackTrace();
return false;
}
return true;
} )


u delu koda metode vratiSveKlijente, rs=st.executeQuery(upit);, on prijavi sledece: ResultSet type has changed.

eto. to je sve sto znam. najgore od svega jeste sto je taj kod najpre radio, i onda, ne znam zasto pukao. ako znate sta je ovo, please help?

moj dan juce je poceo ovako : :type: :, a zavrsio se ovako: :wall: :zgran: 😡
 
na brzake sto sam primetio je da imas razmak kod sensitive: TYPE_SCROLL_SENSI TIVE , umesto da je TYPE_SCROLL_SENSITIVE
 
to je samo ovde na forumu, verovatno kada sam kopirala kod... u programu je TYPE_SCROLL_SENSITIVE...

stvarno mi i dalje nije jasno sta je problem... odoh sad opet da gledam... ako neko zna, please neka odgovori...

nije mi samo jasno kako drugi delovi koda koji su istovetni ovom (u programu ih imam vise, kao sto su vratiSvaMesta isl ) rade bez problema, a ovaj ne... :wall:

ovako - sela sam lepo, obrisala metode koje su pravile problem, otkucala ponovo iste, i sada radi... i dalje mi nisu jasne one greske sto je javljao, ali, dobro... propade dan...

hvala svima koji su zeleli da pomognu, naravno, ukoliko je bilo komentara koji nisu jos uvek postavljeni, zelela bih, naravno, da ih cujem...
 
Poslednja izmena od urednika:
1. Potrazi drugi(noviji) drajver za ODBC
2. Preporuka - koristi prepared statement kad god mozes..
3. Preporuka - koristi ArrayList umesto Vector
Ima jos dosta toga sto bi ja promenio al za sad probaj bar drajver da nadjes durgi..ako ti nesto nije jasno javi..

poz
 
Nazad
Vrh Dno