treeview与数据库,该怎么解决

treeview与数据库
数据库
商品编号       商品名称  
                                                    001   -     糖  
        001                     糖                 ¦  
      00101                 红糖           ¦_   00101-       红糖  
        002                 酒                       ¦         ¦  
      00201           白酒                   ¦   00102-       白糖  
                                                        ¦      
                                                002-酒  
                                                        ¦  
                                                  ¦_00201-白酒  
                                                                  ¦  
                                                      00202-       啤酒  
怎么实现这个treeview,能不能搞点代码,谢谢了


------解决方案--------------------
procedure TMainForm.CreateLeftTree;
var
RootNode,cfNode,hwNode,xNode:TTreeNode;
i,j,cf,hw:Integer;
begin
hw:=0;
cf:=0;
TreeView1.Color:=RGB($ff,$ff,$e0);
cfNode:=Nil;
hwNode:=Nil;

GetHwInfoForTree;//得到hwset[i,J]的值
RootNode:=TreeView1.Items.AddChild(Nil, '粮库1 ');
RootNode.ImageIndex:=2;
for i:=0 to hwCount-1 do
begin
if cf <> hwset[i,0] then
begin
cf:=hwset[i,0];
cfNode:=TreeView1.Items.AddChild(RootNode, '仓房 '+IntToStr(cf));
cfNode.ImageIndex:=1;
end;
if hw <> hwset[i,1] then
begin
hw:=hwset[i,1];
hwNode:=TreeView1.Items.AddChild(cfNode, '货位 '+IntToStr(hw));
hwNode.ImageIndex:=3;
end;
for j:=0 to hwset[i,2]-1 do
begin
xNode:=TreeView1.Items.AddChild(hwNode, '测线 '+IntToStr(j+1));
xNode.ImageIndex:=4;
end;
end;
TreeView1.Selected:=TreeView1.Items[1]; //默认选中节点