美好的一天
我正在尝试将数据从数据库检索到 jTable 中。当用户在文本字段中写入所需数据时,它会将其显示在表格中。
我得到的是
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
这是我的代码
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/hr","root","MZaa8891@");
String Sql="Select recName,phoneNo,quali,major,Uni,status,IntDate,interviewer from rect ";
ps= con.prepareStatement(Sql);
ps.setString(1, jTextField1.getText());
rs =ps.executeQuery();
DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
model.setRowCount(0);
while(rs.next()){
Object obj [] = {
rs.getString("recName"),
rs.getString("phoneNo"),
rs.getString("quali"),
rs.getString("major"),
rs.getString("Uni"),
rs.getString("status"),
rs.getDate("IntDate"),
rs.getString("interviewer")
};
model.addRow(obj);
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, e);
}
有什么想法吗?
最佳答案
您在 where 子句中遗漏了一些参数:
Query: Select recName,phoneNo,quali,major,Uni,status,IntDate,interviewer from rect where something = ?
String Sql="Select recName,phoneNo,quali,major,Uni,status,IntDate,interviewer from rect where something = ?";
ps= con.prepareStatement(Sql);
ps.setString(1, jTextField1.getText());
rs =ps.executeQuery();
关于java - 过滤 mysql 数据以在 JTable 中显示时参数索引超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50810431/