很想拿呀!!!可惜就是没有玩过DELPHI

解决方案 »

  1.   

    vb的我帮忙你DELPHI我从来不看
      

  2.   

    这个不是树,是(有方向的)网图,描述结点的连接以及走向:create table Go(fromNode int,toNode int)查找从结点@f到@t之间的路径,假设最多只有5个中间结点:select n1.fromNode,n2.fromNode,n3.fromNode,n4.fromNode,n5.fromNode,@t
      from Go as n1 inner join Go as n2 on n1.toNode=n2.fromNode
      inner join Go as n3 on n2.toNode=n3.fromNode
      inner join Go as n4 on n3.toNode=n4.fromNode
      inner join Go as n5 on n4.toNode=n5.fromNode
      where n1.fromNode=@f and n5.toNode=@t
    union all
    select n1.fromNode,n2.fromNode,n3.fromNode,n4.fromNode,@t,null
      from Go as n1 inner join Go as n2 on n1.toNode=n2.fromNode
      inner join Go as n3 on n2.toNode=n3.fromNode
      inner join Go as n4 on n3.toNode=n4.fromNode
      where n1.fromNode=@f and n4.toNode=@t
    union all
    select n1.fromNode,n2.fromNode,n3.fromNode,@t,null,null
      from Go as n1 inner join Go as n2 on n1.toNode=n2.fromNode
      inner join Go as n3 on n2.toNode=n3.fromNode
      where n1.fromNode=@f and n3.toNode=@t
    union all
    select n1.fromNode,n2.fromNode,@t,null,null,null
      from Go as n1 inner join Go as n2 on n1.toNode=n2.fromNode
      where n1.fromNode=@f and n2.toNode=@t
    union all
    select fromNode,@t,null,null,null,null
      from Go
      where fromNode=@f and toNode=@t最多有多少个中间结点是可以根据与原始结构判断出来的。
    中间结点个数作为变量时,上面查询语句可以方便地用程序来形成,并且进行动态查询。
      

  3.   

    最好不要把3GL编程语言的繁琐低效(用不到服务器上的查询优化机制)的破习惯随便套用在4GL语言中。