java PreparedStatement语法问题
我有以下代码java PreparedStatement语法问题,java,prepared-statement,Java,Prepared Statement,我有以下代码 public void savePosition(String positionName) { String sqlStatement = "INSERT INTO positions (name) VALUES (?)"; try ( Connection connection = getConnection(); PreparedStatement preparedStatement = con
public void savePosition(String positionName) {
String sqlStatement = "INSERT INTO positions (name) VALUES (?)";
try (
Connection connection = getConnection();
PreparedStatement preparedStatement = connection.prepareStatement(sqlStatement);
preparedStatement.setString(1, positionName);
preparedStatement.executeUpdate();
){
} catch (SQLException e) {
e.printStackTrace();
}
}
,附近有语法错误。在setString和executeUpdate行中
这一排
preparedStatement.setString(1, positionName);
我有
令牌“”上出现语法错误,应为@
标记“,”上的语法错误。期望
令牌“;”上出现语法错误,请删除此令牌
我看不出它有什么问题。您已经将try语句的全部内容放在了只用于初始化可关闭资源的部分中。你想要:
// This part is initializing resources
try (Connection connection = getConnection();
PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
// This part is just statements
preparedStatement.setString(1, positionName);
preparedStatement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}