当前位置: 首页 > 知识库问答 >
问题:

使用jsp从数据库中删除数据

颜修为
2023-03-14

我想从数据库中删除一条特定的记录。

<%
String value = request.getParameter("Meter_No");
int v=Integer.parseInt(value);
try{

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDirver");
Connection conn = DriverManager.getConnection ("jdbc:sqlserver://localhost:1433;databaseName=myDatabase;
user=shakir;password=shakir123");
Statement st = conn.createStatement();
ResultSet rs =st.executeQuery("DELETE * FROM qesco_table 
  WHERE Meter_No ="+v+"");
rs.close();
conn.close();
  }catch(Exception e){
System.out.print(e.getMessage());
}
%>

共有1个答案

陶鸿畴
2023-03-14

你的代码中的每一件事都很好。

但是您需要使用st.executeUpdate()运行查询。

因此更改以下行

ResultSet rs =st.executeQuery("DELETE * FROM qesco_table WHERE Meter_No ="+v+"");
st.executeUpdate("DELETE * FROM qesco_table WHERE Meter_No ="+v);

您应该在finally块中关闭连接和其他连接,而不是try块本身。

如果您尝试使用PreparedStatements编写动态查询,则效果会更好。所以它会变成,

<%
    String value = request.getParameter("Meter_No");
    int v=Integer.parseInt(value);
    Connection conn = null;
    PreparedStatement pst = null;
    try{

        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDirver");
        conn = DriverManager.getConnection ("jdbc:sqlserver://localhost:1433;databaseName=myDatabase;user=shakir;password=shakir123");
        pst = conn.prepareStatement("delete from qesco_table where Meter_No = ?");
        pst.setInt(1,v);

        pst.executeUpdate();
      }catch(Exception e){
        System.out.print(e.getMessage());
    }finally{
        pst.close();
        conn.close();
    }
%>
 类似资料:
  • 问题在于,当我点击deletedata-中的userNotes.jsp测试函数中的DELETE按钮时,它会起作用--它会向我显示在按钮上点击的内容的当前值,而不会显示其他内容。它不会从数据库中删除数据,也不会在响应时发送重定向,我需要做什么? userNotes.jsp deletedata-servlet

  • 我制作了一个JTable,其中填充了数据库中的数据。它从textfields中获取数据并将其添加到表和数据库中。问题是我有一个删除按钮,我让它从表本身删除选定的行(使用defaultTableModel),但它不会从实际的数据库中删除该数据。当我再次运行该程序时,删除的行再次出现在JTable中。 这可能会变得混乱,但希望有人能找出我错过了什么。帮助将会很感激,但不要,我的时间很少,不能完全大修我

  • 这里是将从其中删除记录的index.jsp文件。 index.jsp

  • 这是我的职能。它获得产品的两个参数id和一个名称。使用MySQL命令删除数据库中的一行。我知道在我的代码中有缺失的行,我被卡住了,我不知道如何完成它。我还知道我的SQL行不正确。我不确定组合字符串“name”是否正确。

  • 我正试图从数据库中删除一行,但得到以下错误

  • 我有一个jsp网页。我需要删除用户名从数据库当我按删除按钮从网页。我尝试了下面的代码,但是我不能删除名称,而是在用户名数据库中插入一个新行和一个空值。 unblockServlet.java: 受保护的void doPost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{//TODO自动生成的方法