java - DELETE 查询未从数据库表中删除

标签 java html sql jsp

我是 JSP 新手,我正在尝试创建一个 Web 界面,用户可以在其中输入他们想要删除的信息,并且它将在数据库表中删除。

他们应在此处输入 student_idcourse_id,然后应删除具有这 2 个指定 ID 的任何数据。但是,它并没有从表中删除。我遇到异常

array index out of bounds

这是我的代码:

Delete Row where Student ID: <input type="text" name="dStudent">
and Course ID: <input type="text" name="dCourse">
<input type ="submit" value="Delete">

String delCourse = request.getParameter("dCourse");
String delStudent = request.getParameter("dStudent");

if(delCourse != null && delCourse.length() > 0 && delStudent != null && delCourse.length() > 0){
    statement.executeUpdate("DELETE FROM enroll WHERE student_id = '" + Integer.parseInt(delStudent) + "' AND course_id = '" + Integer.parseInt(delCourse));
}

最佳答案

您没有在 Integer.parseInt(delCourse) 之后关闭单引号,这可能是一个问题。当然,为了更安全,您应该使用PreparedStatement(http://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html)并通过setInt传递整数值。

关于java - DELETE 查询未从数据库表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29752414/

相关文章:

html - 遗漏了一些明显的东西并且 CSS 没有正确呈现

sql - 是否有任何数据类型可以在 sql server 中存储超过 2 gb 的数据

java - 如何分析来自 Java 核心转储的信息?

java - 当只有已弃用的方法时,java 包版本如何变化

java - 每 5 分钟生成一个位置

java - Eclipse - 按空格键删除插入符号前的括号

javascript - js如何从白变蓝?

javascript - 同时独立的 AJAX 请求

sql - 在 MySQL 中一次查询两个表

sql - 将日期部分重置为一个月的第一天,同时保留时间