import db.Db;
import db.EntDb;Db db = EntDb.getThinDb("select oid ,name,par_oid,kind from obj_tb limit 50000 "); 
是什么意思?没有你的包,没法调,你说是那里报错吧

解决方案 »

  1.   

    想根据某一个id,取出这个Id对应的上好多层的name。比如这个例子id是88的数据,我想把它自己的name取出来,它的name=look由于它的pid=44,我想把id=44的name=coco,取出来,这样一直取到pid=1为止。然后把每个name取出来,拼成www.123.com/coco/look这个样子。大家谁有好的思路提供一下。我的代码好像无法实现这个功能。
      

  2.   

    临时写了一个,没测过,不知道是否可以,public String getPath(String id)
        throws Exception
    {
      Connection conn = null;
      PreparedStatement pstmt = null;
      ResultSet rs = null;
      try
      {
        conn = DriverManager.getConnection();
        String query = "select name, pid from table where id = ? ";
        pstmt.setString(1, id);
        pstmt = conn.prepareStatement(query);
        rs = pstmt.executeQuery();
        if (rs.next())
          return getPath(rs.getString("id")) + "/" + rs.getString("name");
        else
          return "";
      }
      catch (SQLException se)
      {
        throw new Exception(se);
      }
      finally
      {
        if (rs != null)
          try { rs.close(); } catch (Exception e) {}
        if (pstmt != null)
          try { pstmt.close(); } catch (Exception e) {}
        if (conn != null)
          try { conn.close(); } catch (Exception e) {}
      }
    }
      

  3.   

    if (rs.next())
      return getPath(rs.getString("pid")) + "/" + rs.getString("name");
    else
      return "";
      

  4.   

    如果charmguy(新新四军) 我想取到特定的name就停下来改如何控制?比如说,我要取到name='kkk'时我就不取了该如何?
      

  5.   

    conn = DriverManager.getConnection();
    String query = "select name, pid from table where id = ? ";
    pstmt.setString(1, id);
    pstmt = conn.prepareStatement(query);
    rs = pstmt.executeQuery();
    if (rs.next())
    {
      String id = rs.getString("id");
      String name = rs.getString("name");
      if (name.equals("kkk"))
        return name;
      else
        return getPath(id) + "/" + name;
    }
    else
    {
      return "";
    }
      

  6.   

    现在的问题:我想取得从最底层开始取name到某一个名字时的所有name的集合。比如说从最底层开始递归,遇到name='dddd'时,它所有的底下的name的集合。不向上递归了。我该怎么做?
      

  7.   

    你的意思是返回一个Collection,而不是一个String?如果这样的话,你可以对上述返回的String处理一下啊,如果是其它,Sorry,我还没有理解你的意思,呵呵!