代码能够执行到最后 ,但是不能删除数据库中的数据,不知道是哪错了还是别的原因,代码如下,麻烦各位帮忙看一下:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="mhb.com.DBConn,java.sql.*" %>
<%if(session.getAttribute("userName")==null||session.getAttribute("userName").toString().length()==0) 
   response.sendRedirect("index.jsp");  
%>
<%Connection conn=DBConn.createDBConn(); %>
<%
   String bookId;   
   bookId=request.getParameter("bookId");   
%>
<%
   Statement sql;
   String sqlString=null;
   if(bookId!="")
   sqlString="Delete from [book] where bookId='"+bookId+"'"; 
   sql=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
   sql.executeUpdate(sqlString);
   
%>
<%DBConn.closeConn(conn);%>
<script language="javascript">
alert("图书信息删除成功!");
window.location.href="book.jsp";
</script>

解决方案 »

  1.   

    是不是没有提交啊,看一下是不是自动提交的值,如果是false就设为true。或者手动提交以下看看。DBConn工具类里面应该有提交的方法吧?
      

  2.   

    "Delete from [book] where bookId "
    [book]  为什么加中括号呢? 去掉试试
      

  3.   

    去不去掉[]结果都一样,能够执行到最后,提示删除成功,但是在数据库中的数据没有删除,前一个页面的代码如下,点击删除后直接执行上面的代码实现删除操作:
    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
    <%@ page import="java.util.*"%>
    <%@ page import="mhb.com.DBConn,java.sql.*" %>
    <%if(session.getAttribute("userName")==null||session.getAttribute("userName").toString().length()==0) 
       response.sendRedirect("index.jsp");  
    %>
    <%Connection conn=DBConn.createDBConn(); %>
    <%
    int dipage=1;//当前页码数默认为1
    String pages=request.getParameter("dipage");
    if(pages==null){
      pages="1";
    }
    try{
      dipage=Integer.parseInt(pages);
    }catch(Exception e){
      dipage=1; 
    }
    %>
    <html>
    <head>
    <title>图书资料管理系统</title>
    <link href="CSS/style.css" rel="stylesheet">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
    <!--
    body {
    background-color: #FFFFCC;
    }
    -->
    </style></head>
    <body onLoad="clockon(bgclock)"><table width="1024"  border="0" cellspacing="0" cellpadding="0" align="center">
      <tr>
        <td valign="top" bgcolor="#FFFFFF"><table width="99%" height="510"  border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="tableBorder_gray">
      <tr>
        <td height="510" valign="top" style="padding:5px;"><table width="98%"  border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td height="22" valign="top" class="word_orange">图书管理&gt;&gt;&gt;</td>
          </tr>
          <tr>
            <td align="center" valign="top">
     <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="87%">&nbsp;      </td>
    <td width="13%">
          <a href="book_add.jsp">添加图书信息</a></td>   
      </tr>
    </table>
    <%
       Statement sql;
       ResultSet rs;
       sql=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
       rs=sql.executeQuery("select * from [book]");
       int countRecord=0;
       int countPageRecord = 0; 
       int countPage=0;
       countPageRecord=5;
       rs.last();
       countRecord=rs.getRow();
       if(countRecord%countPageRecord==0)
          countPage=countRecord/countPageRecord;
        else
          countPage=countRecord/countPageRecord+1;
       if((dipage-1)*countPageRecord==0)
         rs.beforeFirst();
       else
         rs.absolute((dipage-1)*countPageRecord);
    %>  
      <table width="98%"  border="1" cellpadding="0" cellspacing="0" bordercolor="#00FFFF" >
         <tr align="center" bgcolor="#e3F4F7">
         <td width="13%" bgcolor="#F9D16B">图书编号</td>
         <td width="26%" bgcolor="#F9D16B">图书名称</td>
         <td width="15%" bgcolor="#F9D16B">图书类型</td>
        <td width="14%" bgcolor="#F9D16B">出版社</td>
        <td width="12%" bgcolor="#F9D16B">书架</td>
        <td colspan="2" bgcolor="#F9D16B">操作</td>
        </tr>
    <%
    int i=0;
    while(rs.next()){%>
       <tr>
        <td style="padding:5px;">&nbsp;<%=rs.getString("bookId") %></td>  
        <td style="padding:5px;"><%=rs.getString("bookName") %></td>
        <td style="padding:5px;">&nbsp;<%=rs.getString("typeId") %></td>  
        <td style="padding:5px;">&nbsp;<%=rs.getString("isbn") %></td>  
        <td style="padding:5px;">&nbsp;<%=rs.getString("bookbase") %></td> 
        <td width="9%" align="center"><a href='book_update.jsp?bookId="+rs.getString("bookId")+"'>修改</a></td>
        <td width="5%" align="center"><a href='book_delete.jsp?bookId="+rs.getString("bookId")+"'>删除</a></td>
      </tr>
      <%
      i++;
      if(i>countPageRecord) break;
      %> 
      <%
      } 
     %>
     <tr>
        <td colspan="7" align="center" style="padding:5px;">
     <%
       out.print("<font size=4>");
       out.print("共"+countRecord+"条记录,共"+countPage+"页,当前第"+dipage+"页。每页"+countPageRecord+"条记录");
       if(dipage==1);
       else{
          out.print("<a href=book.jsp?dipage=1>首页</a>");
          out.print("<a href=book.jsp?dipage="+(dipage-1)+">上一页</a>,");
       }
       if(dipage==countPage);
       else{
        out.print("<a href=book.jsp?dipage="+(dipage+1)+">下一页</a>,");
        out.print("<a href=book.jsp?dipage="+countPage+">末页</a>");   
       }
      out.print("</font>");
    %> </tr>  
    </table></td>
          </tr>
        </table>
    </td>
      </tr>
    </table><%@ include file="copyright.jsp"%></td>
      </tr>
    </table>
    </body>
    </html>
    <%DBConn.closeConn(conn);%>
      

  4.   

    你调测下,看删除返回值是什么不就知道了。如果还不清楚,打印你的sql出来,到数据库中执行下。
      

  5.   

     if(bookId!="")  //如果是我,我一定不会这么写
      sqlString="Delete from [book] where bookId='"+bookId+"'";