从JavaFX插入MySQL
从javafx中插入mysql问题,无论我做什么,我总是得到无效值。单击按钮时,我试图获得递增的值。数据库中的第一个值是Doc-1,我希望下一个值依次是Doc-2和Doc-3。特别是在查询过程中,我们非常感谢您的帮助,因为一切正常从JavaFX插入MySQL,java,mysql,javafx,javafx-8,Java,Mysql,Javafx,Javafx 8,从javafx中插入mysql问题,无论我做什么,我总是得到无效值。单击按钮时,我试图获得递增的值。数据库中的第一个值是Doc-1,我希望下一个值依次是Doc-2和Doc-3。特别是在查询过程中,我们非常感谢您的帮助,因为一切正常 @FXML private void GenerateDocTag(ActionEvent event) throws SQLException { txtTag.setText( String.valueOf(doctorTag())); } pri
@FXML
private void GenerateDocTag(ActionEvent event) throws SQLException {
txtTag.setText( String.valueOf(doctorTag()));
}
private Integer doctorTag() throws SQLException {
Connection connection = DBController.Connect();
String query = "\n" +
"select DocTag from doctors where substring('Doc - 1', -1);";
resultSet = connection.createStatement().executeQuery(query);
resultSet.first();
int DOC_TAG = resultSet.getInt(1);
return DOC_TAG + 1;
}
上面的错误对于getInt()-“Doc-1”是无效的值,假设您具有下表结构:
value
------
Doc - 1
Doc - 2
Doc - 3
您需要为值
列获取最高值,然后将其转换为int
,如果这是结果集
所期望的,例如。“
另一种方法是获取最大值
并在Java中执行子字符串
。首先检查子字符串值
,System.out.println(resultSet.getString(1))
,是int类型的输出值吗?不要在UI线程中调用非UI代码,这会导致应用程序无响应和不必要的行为。
SELECT CAST(SUBSTRING(value, -1) AS UNSIGNED) AS VALUE
FROM test1 ORDER BY value DESC LIMIT 1;