我的数据库是一个表:USER_ID和NAME,还有ROLE,我想通过USER_ID来查找它的ROLE。
ROLE有三种A,M ,D
然后用java语句判断这个ROLE,如果
ROLE=‘N’ return normal 
ROLE=‘m’return manage
ROLE= ‘d’return director
小妹初学java,请问哪位好心人帮我写下过程~在线等待,先谢谢大家了

解决方案 »

  1.   

    db:
    select * from 这个表 where user_id = 'xx'
    java:
    if(role.equals("n"){
       return "normal";
    }else if (role.equals("m")){
       return "manager";
    }else{
       return "director";
    }
      

  2.   

    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    Connection conn =  DriverManager.getConnection (url,username,password);
    Statement stmt = conn.createStatement(); 
    ResultSet rset = stmt.executeQuery ("select * from 表名 where user_id = ..."); 
    if(rset.next())
    {
      String role = rset.getString("role");
      if(role.equals("n")
      {
        ...
      }
      else if (role.equals("m"))
      {
        ...
      }
      else
      {
        ...
      }}
    rset.close();
    stmt.close();
    conn.close()
      

  3.   

    可以直接用sql语句
    select role case
                when 'N' then 'normal'
                when 'M' then 'manager'
                when 'D' then 'director'
    from ...
    where user_id = 'xxx'
    可能写的不对,好久没写sql了大概思路是这样的,欢迎“髙兽”指正,
      

  4.   

    如果要查找的USER_ID给它一个变量样怎么样?
      

  5.   


    String sql="select CASE ROLE 
                      WHEN 'N' THEN 'normal'  
                      WHEN 'M' THEN 'manage'
                      WHEN 'D' THEN 'director'
           ELSE NULL END
    from table where USER_ID="+USER_ID变量;ResultSet rset = stmt.executeQuery (sql); 
      

  6.   

    try 

    Connection conn; 
    Statement stmt; 
    ResultSet firstres,midres,lastres; 
    //加载Connector/J驱动 
    //这一句也可写为:Class.forName("com.mysql.jdbc.Driver"); 
    Class.forName("com.mysql.jdbc.Driver").newInstance(); 
    //建立到MySQL的连接 
    conn = DriverManager.getConnection("jdbc:mysql://192.168.0.244:3306/XHLYDB","root", ""); 
    //执行SQL语句 
    stmt = conn.createStatement(); 

    firstres = stmt.executeQuery("select USER_LVL from USER_INFO where USER_ID='aaaa'"); 
    //处理结果集 
    String owner;
    while (firstres.next()) 

    String role = firstres.getString("USER_LVL"); 
    if(role.equals("M")){
    owner = "director";
    }
    else if(role.equals("AM")){
    midres=stmt.executeQuery("select USER_ID from USER_INFO WHERE USER_LVL='M'");
    owner = "manager";

    }
    else {
    lastres=stmt.executeQuery("select USER_ID FROM USER_INFO WHERE USER_LVL='M'");
    owner = "salesman"; 
    }
    System.out.println(owner);


    catch (Exception ex) 

    System.out.println("Error : " + ex.toString());