[英]Java Swing - Condition SQL Queries
我有一條sql select語句,通過從jComboBox&jDateChooser獲取用戶輸入信息,可以通過jButton在jtable上顯示查詢。
是否可以為按鈕設置條件,例如
下面的代碼為jButton動作lisener
java.util.Date dateFromDateChooser = jDateChooser.getDate();
String dateString = String.format("%1$tY-%1$tm-%1$td", dateFromDateChooser);
String attendant = (String) cbName.getSelectedItem();
String fill = "SELECT id as 'No', recDate as 'Date', super as 'Supervisor', attendant as 'Attendant' from log"
+ "WHERE recDate = '"+dateString+"'"
+ "and attendant = '" + attendant + "'";
try{
ps = conn.prepareStatement(fill);
rs = ps.executeQuery();
jTable1.setModel(DbUtils.resultSetToTableModel(rs));
}
catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
上面的代碼工作正常,但是我希望允許用戶使用兩種類型的條件。 例如通過選擇“日期和jComboBox”或僅選擇“日期”來顯示搜索結果
我可以使用if else else語句嗎?
請指教...
將檢查添加到您的SQL建築物
String fill = "SELECT id as 'No', recDate as 'Date', super as 'Supervisor', attendant as 'Attendant' from log"
+ "WHERE recDate = '"+dateString+"'";
if(comboboxShouldBeIncluded) {
fill+= " and attendant = '" + attendant + "'";
}
如果未選擇姓名,則無需服務員查詢
String attendant = (String) cbName.getSelectedItem();
String qry;
if( attendant != null && !attendant.isEmpty() ) {
qry = "SELECT id as 'No', recDate as 'Date', super as 'Supervisor', attendant as 'Attendant' from log"
+ "WHERE recDate = '"+dateString+"'"
+ "and attendant = '" + attendant + "'";
} else {
qry = "SELECT id as 'No', recDate as 'Date', super as 'Supervisor', attendant as 'Attendant' from log"
+ "WHERE recDate = '"+dateString+"'";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.