[英]java database connectivity: jdbc
我想將以JFrame形式在文本字段中輸入的字符串用作Java中SQL查詢的一部分。 例如,如果我在文本字段中輸入名稱,我希望sql查詢使用該名稱並提供相關數據,而不是整個表的數據。 就像“從* table_name *中選擇*,其中name = * textfield_input *;” 以下是我用來獲取整個表的數據的代碼。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel model = (DefaultTableModel)p1.getModel();
try{
Class.forName("java.sql.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/ritick","root", "iit2012054");
Statement st = con.createStatement();
String query = "select * from student;";
ResultSet rs = st.executeQuery(query);
while(rs.next()){
String d1 = rs.getString("roll_no");
String d2 = rs.getString("name");
String d3 = rs.getString("dept");
String d4 = rs.getString("cgpa");
model.addRow(new Object[]{d1,d2,d3,d4});
}
rs.close();
st.close();
con.close();
}
catch (Exception e){
JOptionPane.showMessageDialog(this, "error in connectivity !");
}
// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
DefaultTableModel model = (DefaultTableModel)p2.getModel();
try{
Class.forName("java.sql.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/ritick","root", "iit2012054");
Statement st = con.createStatement();
String query = "show databases;";
ResultSet rs = st.executeQuery(query);
while(rs.next()){
String d1 = rs.getString("database");
model.addRow(new Object[]{d1});
}
rs.close();
st.close();
con.close();
}
catch (Exception e){
JOptionPane.showMessageDialog(this, "error in connectivity !");
}
}
這可能有助於嘗試使用PreparedStatement,以便查詢為“從name =?的學生中選擇*”。 從語句setString(1,String)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.