【发布时间】:2018-05-05 11:59:29
【问题描述】:
我正在使用try catch 块过滤来自sqlite database 的数据,我有两个问题这个程序区分大小写我需要它不区分大小写,然后它只在我写下确切名称时过滤数据数据库中给出。请帮助使其成为动态过滤器。
textFieldSearch = new JTextField();
textFieldSearch.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent arg0) {
try {
String query = "select sno,universityname,state,courses,applicationfees,deadline,admissionrequirment,undergrad,grad from UsaCollegeList where state=? ";
PreparedStatement pst = connection.prepareStatement(query);
pst.setString(1, (String)textFieldSearch.getText());
ResultSet rs=pst.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs));
pst.close();
} catch (Exception e) {
// TODO: handle exception
JOptionPane.showMessageDialog(null, "error");
e.printStackTrace();
}
}
});
【问题讨论】:
-
您应该使用
state like ?而不是state =?。区分大小写更可能与 sqlite stackoverflow.com/questions/15480319/… 有关 -
非常感谢它的工作
-
我可以在数据库的所有列中使用过滤器而不是仅在状态中过滤吗?
-
select sno,universityname,state,courses,applicationfees,deadline,admissionrequirment,undergrad,grad from UsaCollegeList where state like ? or sno like ? or universityname like ? or courses like ?等等 -
它似乎无法正常工作,并且没有错误消息
标签: java swing sqlite user-interface jtable