jsp删除某条数据,相关表中的数据也要得到修改

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="com.util.*"%>

<%
DBO db=new DBO();//声明 数据库链接类
request.setCharacterEncoding("gb2312");// 设置页面的字符集
ResultSet rs=null;//定义查询结果集
String sql="";//定义要查询的 sql语句变量
int row=1;//定义返回执行update 结果集变量
    String keyid=(String)request.getParameter("keyid"); 
        String sp=(String)request.getParameter("sp");//变量:商品
String jg=(String)request.getParameter("jg");//变量:价格
String sl=(String)request.getParameter("sl");//变量:数量
String ms=(String)request.getParameter("ms");//变量:描述
String czr=(String)request.getParameter("czr");//变量:操作人
String bssj=(String)request.getParameter("bssj");//变量:报损时间

/*
.报损修改后台页面
*/    
 
 //int row=0;

int num=0;

sql="select * from baosun where sp='"+sp+"'";
try{
     rs=db.query(sql);

    if(rs.next()){
    num=rs.getInt("sl");
    }

      sql="update shangpin set sl=sl+"+num+" where spid='"+sp+"'";
      db.update(sql);//加入更新相关表的语句后无法实现删除
    
    
        sql="delete from baosun where bsid='"+keyid+"'";            //拼接sql语句
            
         row=db.update(sql);//执行sql语句
        
         
}catch(Exception e){
System.out.println(e.toString());}
if(row==1){//操作成功
out.println("<script>");
out.println("alert('操作成功');");
out.println("window.location='baosunlist.jsp'");
out.println("</script>");
}else{//操作失败
out.println("<script>");
out.println("alert('操作失败');");
out.println("window.location='baosunlist.jsp'");
out.println("</script>");
}
db.close();
%>

要不你试试,执行更新的时候 new 一个新的 DBO对象执行,执行删除的时候再 new 一个新的 DBO 对象呢

你你问题是什么,错误是什么?

 //int row=0;

int num=0;

sql="select * from baosun where sp='"+sp+"'";
try{
     rs=db.query(sql);

    if(rs.next()){
    num=rs.getInt("sl");
    }

      sql="update shangpin set sl=sl+"+num+" where spid='"+sp+"'";
      db.update(sql);//加入更新相关表的语句后无法实现删除
    
    
        sql="delete from baosun where bsid='"+keyid+"'";            //拼接sql语句
            
         row=db.update(sql);//执行sql语句
        
         
}catch(Exception e){
System.out.println(e.toString());}
if(row==1){//操作成功
out.println("<script>");
out.println("alert('操作成功');");
out.println("window.location='baosunlist.jsp'");
out.println("</script>");
}else{//操作失败
out.println("<script>");
out.println("alert('操作失败');");
out.println("window.location='baosunlist.jsp'");
out.println("</script>");
}
db.close();
%>

你把这块的代码拆开试试。你执行完修改又执行删除。我感觉不行。你重新建立连接再执行删除试试

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632