クラスQuery
のsearchitem
というメソッドを、データベースのテーブル項目のすべての詳細を検索してjtextfieldsに表示するSearchという名前のjbuttonにコールしようとしています。以下は、Queryクラスのsearchitem
メソッドです。クラス内のJavaメソッドは、指定された型には適用できません
public ResultSet searchitem() {
try {
String sql = "select * from tblitem";
stmt = conn.connect.createStatement();
rs = stmt.executeQuery(sql);
return rs;
} catch (SQLException ex) {
System.out.println("SQL Exception in Seach Book "+ex.getMessage());
JOptionPane.showMessageDialog(null, "Error in Retriving Book Information", "Error", JOptionPane.ERROR_MESSAGE);
Logger.getLogger(Query.class.getName()).log(Level.SEVERE, null, ex);
return null;
}
}
これはjbuttonのコードです。
try {
String id, nme,cos,pr,available,sid,search;
search= stf1.getText();
if(search.length()!=5 || !search.toLowerCase().startsWith("i")){
JOptionPane.showMessageDialog(null, "Incorrect Item ID \nItem ID should start with 'i' and 5 characters should be used ", "Error", WIDTH);
}
else{
Query query = new Query();
rs = query. searchitem(search);
rs.next();
id = rs.getString(1);
nme= rs.getString(2);
cos = rs.getString(3);
pr = rs.getString(4);
available = rs.getString(5);
sid = rs.getString(6);
boolean availablity = Boolean.valueOf(available);
etf1.setText(id);
etf2.setText(nme);
etf3.setText(cos);
etf4.setText(pr);
ecb1.setSelected(availablity);
etf5.setText(sid);
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Item not Available. \nEnter an existing Item ID", "Unavailable", JOptionPane.ERROR_MESSAGE);
System.out.println("SQL Exception in retriving Item details");
Logger.getLogger(Item.class.getName()).log(Level.SEVERE, null, ex);
}
}
しかし、私はクラスのクエリで
方法searchitemは、与えられたタイプに適用することはできないと言っラインrs = query. searchitem(search);
にエラーが発生します。必要な
は:引数
が見つかりました:文字列
理由:実際の仮引数リストの長さが異なるん
の一つのパラメータを期待する機能を実装して明らか 'searchitem'は引数を受け入れていない - 例外ように明確に述べています。 – Idos
エラーメッセージは非常に明確です。あなたはそれについて何を正確に理解していませんか? 'searchitem()'メソッドはパラメータを取りませんが、1つのパラメータで呼び出すようにしています。 – Jesper