欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【汇智学堂】JAVAWEB学习日志

程序员文章站 2022-06-29 20:04:06
...

今日分享(1):不靠表中主外键,进行删除驳回
实现方法:第一步、在被驳回表的实现类里面定义方法,将驳回表中字段查询出来。

  public int find(int ID){

        String fullname=findFullName(ID);

            int aa = 0;

            if(fullname!=null){
                String sql="select count(*) from tb_marks where fullname=?";
                rs= executeQuery(sql,fullname);

                try {
                    if(rs.next()) {
                        String a = rs.getString(1);
                        aa = Integer.parseInt(a);
                    }
                }
                catch (Exception e){
                    e.printStackTrace();
                }
        }
        return  aa;
    }

  

注意:字段的数据类型转换,rs.next()的使用等。

第二步:在被驳回表的删除方法中引用查询并用if(),else()进行判断。

 public int delChildren(int ID) {
       // Children c=null;
        int num = 0;
        int figer=find(ID);
        String sql = "delete  from students where ID=?";
        try {
            if(figer>0){
                num=0;
            }
            else {
                num = executeUpdate(sql, ID);
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        return num;
    }

用if,else进行判断,如果出现相同字段,就驳回被删除表的删除请求。最好在servlet中用alert弹框显示一个“删除无效”。
如果表中可能出现多个相同字段,不确定哪个时,可定义多个字段的查询。

注:本方法为非专业方法,十分繁琐。利用MySQL表中主外键相互关联进行驳回更加方便。