现在有3个用户表,做一个登陆的页面,就只需要输入用户名和密码,点确定就可以进入。
如何实现在这3个表中查找用户名和密码?(不能有选择登陆类型的按钮) 

解决方案 »

  1.   

    如果是毫无关联的3个表就UNION,或者执行3次搜索,不过效率就地了
      

  2.   

    怎么执行3次查询?sql语言写3次?不过好象不行哦~~
      

  3.   

    用UNION语句联合查询.具体是怎么操作的啊?
    就是 select * from a union select * from union bselect * from c wherr …………?
    不过好象不行哦
      

  4.   

    A、B、C 3个表是没有关联的,现在要在ABC中查出一个ID,先找A表,没有再找B表,没有再找C表。
    这个应该怎么实现呢?
      

  5.   

    bselect ?
    简单的说就是用union 把你对3个表的sql连接起来就可以了。不过你要是要求有先后顺序的话,就分开3次调用dao,每次各执行一次sql,对于不同的表
      

  6.   

    select psw,id from a where id=1
    union 
    select psw,id from b where id=1
    union
    select psw,id from c where id=1关键是显示的列名都要一样
      

  7.   

    select * from a union select * from union b select * from c where …………? 是这样的,呵呵。不过这样我试了 ,不行呢。提示:查找发生错误!
    SDMRauquin兄能否说得详细一点,直接union 3个表是怎么弄的?
    3调用dao 又是怎么弄的?
      

  8.   

    select psw,id from a where id=1
    union 
    select psw,id from b where id=1
    union
    select psw,id from c where id=1
    关键是显示的列名都要一样id=1 是个什么意思啊?  
      

  9.   

    会得不多,用的是jsp的struts架构,谢谢冷月兄指教!
      

  10.   

    action:
    LoginInfoForm loginInfoForm = (LoginInfoForm) form;
    MemberInfo memberInfo = loginInfoForm.getMemberInfo(); try { MemberInfoDAO memberInfoDAO = new MemberInfoDAO();
    memberInfo = memberInfoDAO.loginI(memberInfo); if (memberInfo == null) { memberInfo = memberInfoDAO.loginII(memberInfo);

    if (memberInfo == null) { memberInfo = memberInfoDAO.loginIII(memberInfo);
    errors.add("memberInfo", new ActionError("error"+langInfo.getLanguageName()+".memberInfo.no"));

    saveErrors(request, errors);
    return new ActionForward(mapping.getInput());
    }
    }
             else
             {
            return (mapping.findForward("success" + langInfo.getLanguageName()));
             }
      

  11.   

    dao:
    public MemberInfo loginI(MemberInfo memberInfo) throws Exception { String sqlStr = "SELECT password_,company_name_,address_,"
    + "telephone_,mobile_phone_,fax_,contact_,post_,email_,introduction_,"
    + "postcode_,url_,expo_url_,sex_,charged_,date_ "
    + "FROM t_member WHERE member_id_=? "; Connection con = DriverManager.getConnection("jdbc:poolman");
    PreparedStatement ps = con.prepareStatement(sqlStr); ps.setString(1, memberInfo.getMember_id()); ResultSet rs = ps.executeQuery(); if (rs.next()) {

    String password = rs.getString(1);
    if (password == null)
    password = "";
    if (memberInfo.getPassword().equals(password)) {

    memberInfo.setCompany_name(rs.getString(2));
    memberInfo.setAddress(rs.getString(3));
    String strTelephone = rs.getString(4);
    } else
    memberInfo = null; } else {
    memberInfo = null;
    } ps.close();
    rs.close();
    con.close(); return memberInfo;
    }II,III的类似,不过其中的sql要改变