我试图返回4个值,其中两个是字符串。但我继续得到NumberFormatException。这是错误来自的部分。
try{
Class.forName("org.sqlite.JDBC");
Connection connection = DriverManager.getConnection("jdbc:sqlite:C:\\Users\\Butch\\Desktop\\Database\\StudentBase.sqlite");
PreparedStatement statement=connection.prepareStatement(("select FirstName+LastName,GradeLevel,ReadingLevel from Student where FirstName=? AND LastName=? AND GradeLevel=? AND ReadingLevel=?"));
statement.setString(1,textField.getText());
statement.setInt(2,Integer.parseInt(textField_3.getText()));
statement.setInt(3,Integer.parseInt(textField_2.getText()));
ResultSet resultset=statement.executeQuery();
while(resultset.next())
{
textField.setText(resultset.getString(1));
textField_3. setText(Double.toString(resultset.getInt(2)));
textField_2. setText(Double.toString(resultset.getInt(3)));
}
}
}
catch(Exception e){JOptionPane.showMessageDialog(null, e);
}
有没有办法重写它?
答案 0 :(得分:-1)
尝试:改变这个:
statement.setInt(2,Integer.parseInt(textField_3.getText()));
statement.setInt(3,Integer.parseInt(textField_2.getText()));
对此:
statement.setInt(2,Integer.parseInt("0"+textField_3.getText()));
statement.setInt(3,Integer.parseInt("0"+textField_2.getText()));