Java 搜索数据库 Table
Java Search Database to Table
我无法在数据库中搜索记录,当我向 TextField
写入文本时 TableModel
正在加载但不在数据库中搜索并且 table 很清楚。
private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {
jTabbedPane1.setSelectedIndex(2);
try {
File currDir= new File ("Baza.db");
String sc = currDir.getAbsolutePath();
sc = sc.substring(0, sc.length());
String url = "jdbc:sqlite://"+sc;
Connection conn = DriverManager.getConnection(url);
String wyszukaj =" SELECT * FROM WydatkiStale WHERE id_WydatekStaly =?";
PreparedStatement pst = conn.prepareStatement(wyszukaj);
pst.setString(1,"value");
ResultSet rs = pst.executeQuery();
jTable3.setModel(DbUtils.resultSetToTableModel(rs));
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, e);
}
}
application window view
问题最有可能出现在这里:
pst.setString(1,"value");
您在每个数据库查询中都使用硬编码值,但您应该使用从 java.awt.event.KeyEvent evt
或 TextField
content
中动态获取的值
我无法在数据库中搜索记录,当我向 TextField
写入文本时 TableModel
正在加载但不在数据库中搜索并且 table 很清楚。
private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {
jTabbedPane1.setSelectedIndex(2);
try {
File currDir= new File ("Baza.db");
String sc = currDir.getAbsolutePath();
sc = sc.substring(0, sc.length());
String url = "jdbc:sqlite://"+sc;
Connection conn = DriverManager.getConnection(url);
String wyszukaj =" SELECT * FROM WydatkiStale WHERE id_WydatekStaly =?";
PreparedStatement pst = conn.prepareStatement(wyszukaj);
pst.setString(1,"value");
ResultSet rs = pst.executeQuery();
jTable3.setModel(DbUtils.resultSetToTableModel(rs));
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, e);
}
}
application window view
问题最有可能出现在这里:
pst.setString(1,"value");
您在每个数据库查询中都使用硬编码值,但您应该使用从 java.awt.event.KeyEvent evt
或 TextField
content