我正在尝试解决我的代码问题。在以下代码中,它包含JComboBox
,其中包含月份列表。当我点击1月份时,我想显示该月的所有细节。
private void jComboBox1_MonthsActionPerformed(java.awt.event.ActionEvent evt) {
String selection = (String)jComboBox1_Months.getSelectedItem();
if(selection.equals("January")){
try{
String sql = "select * from booking where Date = ??/01/??"; //problem
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
viewBookingTable.setModel(DbUtils.resultSetToTableModel(rs));
} catch(Exception e){
}
}
}
Date
的格式为12/01/16
Database
,格式为CHAR
。
请帮忙。非常感谢你提前。
答案 0 :(得分:1)
即使我建议您重新审视您的方法并支持使用java.sql.Date
类型,您也可以使用 LIKE 谓词选择所需的行:
String sql = "SELECT * FROM booking WHERE Date LIKE '%/01/%'";
答案 1 :(得分:0)
String sql =“select * from booking where SUBSTR(Date,4,2)=”01“;
答案 2 :(得分:0)
int index = jComboBox1_Months.getSelectedIndex() + 1;
String sql = "SELECT * FROM `booking` WHERE `date` like '%?%';
pst = conn.prepareStatement(sql);
pst.setObject(1, index);
...