2017-07-02 6 views
1

私は私のデータベースからレコードを照会することはできませんよ、とSQL LIKEを実行することはできません取得「UCAExc ::: JDBC呼び出しの4.0.2無効な引数:範囲外のパラメータインデックス:1」エラーメッセージアクセスデータベースは

これはどのようにして起こり、どのように解決できますか?

public void query(){ 
    String name = name_tt.getText(); 
    DefaultTableModel model= new DefaultTableModel(); 
    JScrollPane scrollPane = new JScrollPane(); 
    scrollPane.setBounds(0, 283, 555, 212); 
    contentPane.add(scrollPane); 

    table = new JTable(model); 
    scrollPane.setViewportView(table); 
    model.addColumn("ID"); 
    model.addColumn("IDs"); 
    model.addColumn("Name"); 
    try 
    { 
     PreparedStatement pst = con.prepareStatement("SELECT * FROM TEST 
     WHERE IDs LIKE '?*' "); 
     pst.setString(1, name); 
     ResultSet rs = pst.executeQuery(); 
     while(rs.next()) 
     { 
      model.addRow(new Object[]{rs.getInt(1),rs.getString(2),rs.getInt(3)}); 
     } 

    } 
    catch(Exception e){ 
     System.out.println(e.getMessage()); 

    }; 

} 

答えて

1

あなたは、パラメータプレースホルダ?ではなく、SQLステートメント内リテラル文字列の一部であることの、基本的なSQL文の一部であるそのように

PreparedStatement pst = con.prepareStatement("SELECT * FROM TEST WHERE IDs LIKE ?"); 
pst.setString(1, name + "*"); 
ResultSet rs = pst.executeQuery(); 

を行う必要があります。

関連する問題