同意楼上的!!
Delphi工具TTreeView就可以做了
类似于这样
数据结构如下:
CREATE TABLE [tbTree] (
[ID] [varchar] (4) COLLATE NOT NULL ,
[Context] [nvarchar] (50) NULL ,
[ParentID] [varchar] (4) NULL ,
CONSTRAINT [PK_tbTree] PRIMARY KEY CLUSTERED
(
[ID]
) ON [PRIMARY]
) ON [PRIMARY]
代码如下:lprocedure TForm1.ReadTree(tnode:TTreeNode;Fvalue: String);
lVar
l i: integer;
l Flist:TStringList;
l Flist1:TStringList;
l str:string;
lbegin
l qryTree.close;
l qryTree.sql.clear;
l qryTree.sql.add('select Parentid,id,context from tbtree');
l qryTree.sql.add('where isnull(Parentid,'''')=');
l qryTree.sql.add(''''+Fvalue+'''');
l qryTree.Open;
l qryTree.First;
l Flist:=TStringList.Create;
l Flist1:=TStringList.Create;
l while not qryTree.eof do
l begin
l Flist.Add(trim(qryTree.fieldbyname('context').asstring));
l Flist1.Add(qryTree.fieldbyname('id').asstring);
l qryTree.next;
l end;
l for i:= 0 to flist.Count-1 do
l begin
l s:=flist1.Strings[i];
l str:=flist.Strings[i];
l snode:=Treeview1.items.addchild(tnode,str);
l ReadTree(snode,s);
l end;
l flist.free;
l flist1.free;
lend;
Delphi工具TTreeView就可以做了
类似于这样
数据结构如下:
CREATE TABLE [tbTree] (
[ID] [varchar] (4) COLLATE NOT NULL ,
[Context] [nvarchar] (50) NULL ,
[ParentID] [varchar] (4) NULL ,
CONSTRAINT [PK_tbTree] PRIMARY KEY CLUSTERED
(
[ID]
) ON [PRIMARY]
) ON [PRIMARY]
代码如下:lprocedure TForm1.ReadTree(tnode:TTreeNode;Fvalue: String);
lVar
l i: integer;
l Flist:TStringList;
l Flist1:TStringList;
l str:string;
lbegin
l qryTree.close;
l qryTree.sql.clear;
l qryTree.sql.add('select Parentid,id,context from tbtree');
l qryTree.sql.add('where isnull(Parentid,'''')=');
l qryTree.sql.add(''''+Fvalue+'''');
l qryTree.Open;
l qryTree.First;
l Flist:=TStringList.Create;
l Flist1:=TStringList.Create;
l while not qryTree.eof do
l begin
l Flist.Add(trim(qryTree.fieldbyname('context').asstring));
l Flist1.Add(qryTree.fieldbyname('id').asstring);
l qryTree.next;
l end;
l for i:= 0 to flist.Count-1 do
l begin
l s:=flist1.Strings[i];
l str:=flist.Strings[i];
l snode:=Treeview1.items.addchild(tnode,str);
l ReadTree(snode,s);
l end;
l flist.free;
l flist1.free;
lend;
地区父级ID 地区子级ID商品表:
商品父级ID 商品子级ID地区商品表:
地区子级ID 商品子级ID
地区表和商品表不过商品表中有地区的ID号的。本来就是一主从树的关系。
现要求在一棵树中来体现出来。
就是用SQL怎么来形成一棵树?