Ciao a tutti!
Vorrei caricare in una JComboBox i dati di una colonna presente in una tabella del mio database sql!!
Come posso fare?
![]()
Ciao a tutti!
Vorrei caricare in una JComboBox i dati di una colonna presente in una tabella del mio database sql!!
Come posso fare?
![]()
crei il tuo jComboBox e ad ogni risultato della query lo aggiungi con addItemOriginariamente inviato da nala84
Ciao a tutti!
Vorrei caricare in una JComboBox i dati di una colonna presente in una tabella del mio database sql!!
Come posso fare?
![]()
http://java.sun.com/javase/6/docs/ap...JComboBox.html![]()
conoscenze: C/C++, Java, PHP, Python
[No PM tecnici o di qualsiasi genere]
Oppure fai cosi...:
String[] item;
ResultSet rs = stat.excuteQuery(query);
int i=0;
while(rs.next()){
item[i] = rs.getString(Colonna);
i++;
}
JComboBox cb = new JComboBox(item);
noi Stiamo usando questo file per la connessione e l'esecuzione delle query:
codice:import java.sql.*; public class SQLManager { public static Connection conn; private PreparedStatement pstmt; private static ResultSet rs; @SuppressWarnings("unused") private static Statement Stm; //private static String query; //Apre la connessione al database public SQLManager(String driver, String connectionURL, String userDB, String passwordDB){ try{ Class.forName(driver); conn = DriverManager.getConnection(connectionURL , userDB, passwordDB); Stm = conn.createStatement(); }catch(Exception ex){ System.out.println("SQLException: " + ex.getMessage()); } } //Chiude la connessione al database public void close(){ try { if(rs!=null) rs.close(); if(pstmt!=null) pstmt.close(); if(conn!=null) conn.close(); } catch (SQLException ex) { ex.printStackTrace(); } } public ResultSet execute(String anSQLString) { try{ rs = Stm.executeQuery(anSQLString); }catch(Exception ex){ ex.printStackTrace(); } return rs; } }// fine eseguiQuery
codice:String[]item; SQLManager sqlm = new SQLManager("com.mysql.jdbc.Driver","jdbc:mysql://localhost:3306/schedule","root","root"); String query = "select cognome from Utente"; sqlm.execute(query); int i=0; while(rs.next()){ item[i]= rs.getString(cognome); i++; } JComboBox jComboDocenti = new JComboBox(item); PannelloBottoni.add(jComboDocenti); jComboDocenti.setBounds(1104, 120, 145, 22); }
Come devo fare?? non i riconosce il ResultSet... nel file contenente la ComboBox...
![]()
![]()
ma sono in due classi separate? :master:Originariamente inviato da nala84
noi Stiamo usando questo file per la connessione e l'esecuzione delle query:
codice:import java.sql.*; public class SQLManager { public static Connection conn; private PreparedStatement pstmt; private static ResultSet rs; @SuppressWarnings("unused") private static Statement Stm; //private static String query; //Apre la connessione al database public SQLManager(String driver, String connectionURL, String userDB, String passwordDB){ try{ Class.forName(driver); conn = DriverManager.getConnection(connectionURL , userDB, passwordDB); Stm = conn.createStatement(); }catch(Exception ex){ System.out.println("SQLException: " + ex.getMessage()); } } //Chiude la connessione al database public void close(){ try { if(rs!=null) rs.close(); if(pstmt!=null) pstmt.close(); if(conn!=null) conn.close(); } catch (SQLException ex) { ex.printStackTrace(); } } public ResultSet execute(String anSQLString) { try{ rs = Stm.executeQuery(anSQLString); }catch(Exception ex){ ex.printStackTrace(); } return rs; } }// fine eseguiQuery
codice:String[]item; SQLManager sqlm = new SQLManager("com.mysql.jdbc.Driver","jdbc:mysql://localhost:3306/schedule","root","root"); String query = "select cognome from Utente"; sqlm.execute(query); int i=0; while(rs.next()){ item[i]= rs.getString(cognome); i++; } JComboBox jComboDocenti = new JComboBox(item); PannelloBottoni.add(jComboDocenti); jComboDocenti.setBounds(1104, 120, 145, 22); }
Come devo fare?? non i riconosce il ResultSet... nel file contenente la ComboBox...
![]()
![]()
conoscenze: C/C++, Java, PHP, Python
[No PM tecnici o di qualsiasi genere]
si!
una contenente contenente la connessione + query e l'altra contenente l'interfaccia e quindi anche la JComboBox
Scusa ma se dove chiami sqlm.execute(query)... fai cosi:
ResultSet rs = sqlm.execute(query);
...
dovrebbe funzionare perchè la funzione execute ti restituisce un resultSet che puoi usare nell'altra classe. O sbaglio??
l'ho modificato in questo modo:
e mi da le seguenti eccezioni:codice:String[]item = null; SQLManager sqlm = new SQLManager("com.mysql.jdbc.Driver","jdbc:mysql://localhost:3306/schedule","root","root"); String query = "select cognome from utente"; ResultSet rs= (ResultSet) sqlm.execute(query); int i=0; while(rs.next()){ item[i]= rs.getString("Cognome"); i++; } JComboBox jComboDocenti = new JComboBox(item); PannelloBottoni.add(jComboDocenti); jComboDocenti.setBounds(1104, 120, 145, 22); sqlm.close();
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.schedule.oggetti.InsegnamentiAdmin.leggitabell a2(InsegnamentiAdmin.java:250)
at org.schedule.pannelli.PannelloAdminStart$2.actionP erformed(PannelloAdminStart.java:140)
at javax.swing.AbstractButton.fireActionPerformed(Unk nown Source)
at javax.swing.AbstractButton$Handler.actionPerformed (Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed (Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent( Unknown Source)
at java.awt.LightweightDispatcher.processMous
perkè???![]()
![]()
![]()
![]()
![]()
L'errore che ti da non ho idea di cosa sia, perchè sembra non derivare da pezzo di codice in questione.
E poi, ma è normale che nella query "cognome" sia scritto con lettera minuscola e in rs.getString("Cognome") con lettera maiuscola??
L'errore non è dovuto a quella parte di codice perchè mettendolo come commento funziona tutto benissimo!!
mi spiegheresti cosa fa questa istruzione???
non ho capito...
rs.getString("Cognome")