Aiuto con la tesina (java+database)

NicoZ96

Utente Attivo
966
100
Hardware Utente
CPU
i7 4790k
Dissipatore
h80i
Scheda Madre
maximus ranger VII
Hard Disk
seagate barracuda 1tb x2, ssd samsung 640 evo 120gb, ssd kingstone 120gb, ssd samsung 860evo 500gb
RAM
16gb 1866MhZ corsair vengeance
Scheda Video
msi rtx 2080 gaming x trio
Scheda Audio
creative soundblaster z
Monitor
Samsung C24FG70 144Hz FHD
Alimentatore
v650 semi modular cooler master
Case
haf xm
Periferiche
razer deathadder elite, triggerz, sennheiser hd 598se, Logitech g27, controller xbox 360(PC), razer wildcat
Sistema Operativo
windows 10
public void caricaTabella() throws FileNotFoundException, IOException, SQLException {
try {
int i = 0, j = 0;
Class.forName("com.mysql.jdbc.Driver");
Connection cnt = DriverManager.getConnection("jdbc:mysql://localhost", "root", "");
cnt.setCatalog("tesina"); //nome del database
Statement st = cnt.createStatement();
ResultSet rt= st.executeQuery("SELECT Nome, Cognome, ID, Appunti FROM studente ORDER BY Cognome, Nome;");
for(i=0 ;rt.next();i++){
setValueAt(rt.getObject("Cognome", String.class),i, 1);
setValueAt(rt.getObject("Nome", String.class),i, 2);
setValueAt(rt.getObject("Appunti", String.class),i, 3);
Statement stvoti = cnt.createStatement();
ResultSet rtvoti= stvoti.executeQuery("SELECT Valore FROM studente, voto WHERE voto.ID_Studente = "+rt.getObject("ID", Integer.class)+";");
System.out.println("valore ID studente" + rt.getObject("ID", Integer.class));
for(j=4 ;rtvoti.next();j++){
setValueAt(rtvoti.getObject("Valore", String.class),i, j);
System.out.println("valore voto nel for" + rtvoti.getObject("Valore", String.class));
}

rtvoti.close();
stvoti.close();
}
rt.close();
st.close();
cnt.close();
} catch (ClassNotFoundException ex) {
Logger.getLogger(MyTableModel.class.getName()).log(Level.SEVERE, null, ex);
}
}


Ho incollato il metodo che mi dà problemi. I system.out erano solo per controllare cosa producesse e appunto facendolo mi sono reso conto che il ciclo for in rosso, stampa n volte lo stesso voto quante il numero di studenti, ma non riesco a capirne il perchè. Qualche idea? (se servono altre parti di codice/vedere come è fatto il database chiedete pure)
 

NicoZ96

Utente Attivo
966
100
Hardware Utente
CPU
i7 4790k
Dissipatore
h80i
Scheda Madre
maximus ranger VII
Hard Disk
seagate barracuda 1tb x2, ssd samsung 640 evo 120gb, ssd kingstone 120gb, ssd samsung 860evo 500gb
RAM
16gb 1866MhZ corsair vengeance
Scheda Video
msi rtx 2080 gaming x trio
Scheda Audio
creative soundblaster z
Monitor
Samsung C24FG70 144Hz FHD
Alimentatore
v650 semi modular cooler master
Case
haf xm
Periferiche
razer deathadder elite, triggerz, sennheiser hd 598se, Logitech g27, controller xbox 360(PC), razer wildcat
Sistema Operativo
windows 10
Risolto, mancava la join :cav:
 

Entra

oppure Accedi utilizzando