java - 我如何使用 jTextField 在数据库中搜索

标签 java database jtable jtextfield

大家好,我编写了连接到数据库的程序,我创建了 jTextField 和 jTable,我的问题是如何使用 jTextField 在数据库中进行搜索并在 jTable 中查看我尝试的代码如下

尝试{

    String host = "jdbc:derby://localhost:1527/PROCAT";
    String uName = "zain";
    String uPass = "zain";
    Connection con = DriverManager.getConnection( host, uName, uPass);
  String sql = "Select * from ITEMB where ITEM '"+asdf.getText()+"'";
   stmt = con.createStatement();

rs = stmt.executeQuery(sql);

  while (rs.next()) {
    String pr = rs.getString("PRISE");
    String it= rs.getString("ITEMNAME");
    String itm = rs.getString("ITEM");
    String[] data = {pr, it, itm};
    tabMode.addRow(data);
    double price = Double.parseDouble(rs.getString("prise"));
             totalpay = price + totalpay;
            ++rowCount;
  }
}
catch (Exception e) {
    //ignore
    }

    jTextField3.setText(String.valueOf(totalpay));






}            

最佳答案

不要忽略异常。如果不显示错误消息,您如何期望调试 SQL???

我猜问题是你在 select 语句中缺少一个“=”(即“ITEM = asdf.getText()”)。

但是,使用 SQL 的更好方法是使用 PreparedStatement,这样您就不必担心所有分隔符。所以 SQL 可能类似于:

String sql = "Select * from ITEMB WHERE ITEM = ?";

PreparedStatement stmt = connection.prepareStatement(sql);

stmt.setString( 1, asdf.getText() );
stmt.executeQuery();
stmt.close();

阅读维护要容易得多。

关于java - 我如何使用 jTextField 在数据库中搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24543409/

相关文章:

ios - Firebase 数据库不等于请求 - 替代解决方案(适用于 iOS)

java - JTable 始终无法获取内部 ComboBox 的正确 rowIndex

java - 使用 java 为 Jtable 的每一行添加列表框

java - 如何使用我的方案隐式打开我的应用程序?

java - hibernate 无法获得正确的结果集

java - JPA 摘要实体或元实体

java - 渲染器中未设置 RowSorter

java - 如何在运行时向扩展类加载器添加/加载类?

javascript - javascript推荐的数据库缓存库

mysql - 如何使用过程更改列的默认值