package quizzone;
import java.awt.Font;
import java.sql.*;
import javax.swing.*;
public class Jdb {
private String url
= "jdbc:odbc:Mydb";
//Apre connessione al db
public Jdb() {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.
err.
print("SQLException: ");
System.
err.
println("Connessione database fallita.\n" + ex.
getMessage());
}
}
//estrae dal db un record per volta, lo divide e crea e restituisce un array di string
public String[] estrai
(int indice
) {
String sql
= "SELECT ID,domanda,prima,seconda,terza,quarta,giusta FROM Quesiti WHERE ID=" + indice
;
try {
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
rs.next();
q[0] = rs.getString("domanda");
q[1] = rs.getString("prima");
q[2] = rs.getString("seconda");
q[3] = rs.getString("terza");
q[4] = rs.getString("quarta");
q[5] = rs.getString("giusta");
con.close();
System.
err.
print("SQLException: ");
System.
err.
println("Impossibile eseguire la query.\n " + ex.
getMessage());
}
return q;
}
//inserisce nella tabella classifica il nome e il punteggio del concorrente
public void insert
(String n,
int p
) {
try {
stmt = con.createStatement();
stmt.executeUpdate("INSERT INTO classifica (nome,punteggio) VALUES ('" + n + "','" + p + "')");
con.close();
System.
err.
print("SQLException: ");
System.
err.
println("Impossibile eseguire la query.\n " + ex.
getMessage());
}
}
//estrae nome e punteggio di tutti i giocatori ordinandoli in ordine decrescente
//comando sql "ORDER BY nomecolonna ASC | DESC" crea un JTable con i primi 10
// che hanno totalizzato il punteggio pi� alto
String[] col
= {"Nome",
"Punteggio"};
int i = 0;
try {
stmt = con.createStatement();
rs = stmt.executeQuery("SELECT nome,punteggio FROM classifica ORDER BY punteggio DESC");
while (rs.next() && i < 10) {
row[i][0] = rs.getString("nome");
row[i][1] = rs.getString("punteggio");
i++;
}
con.close();
System.
err.
print("SQLException: ");
System.
err.
println("Impossibile eseguire la query.\n " + ex.
getMessage());
}
t.
setFont(new Font("Arial",
Font.
PLAIN, 14
));
t.setFillsViewportHeight(true);
p.add(scrollPane);
return p;
}
}