如何用sql server 存储树形结构的数据,请指教,急,在线等待

我现在要用sql server来存储一个公司的组织结构,这是个树形结构
有省级总公司,下属有市级公司,市级下面有县级,县级下面有部门,部门下面有营业厅等等,请问大虾们如何把这个树形结构用sql server 来存储到数据库中
---------------------------------------------------------------

table
id,fatherId,name
1 0 省级总公司
2 1 市级公司1
3 1 市级公司2
4 1 市级公司3
5 2 市级1下面有县级1
6 3 市级2下面有县级1
7 3 市级2下面有县级2
......
---------------------------------------------------------------

table
方法二,
id,name
001 省级总公司
001001 市级公司1
001002 市级公司2
001003 市级公司3
001001001 市级1下面有县级1
001002001 市级2下面有县级1
001002002 市级2下面有县级2
......

---------------------------------------------------------------

drop table new_tree
go
/parent对应父亲结点,child对应儿子结点,如果child is NULL则本结点为叶子结点/
create table new_tree ( parent varchar(80), child varchar(80))
go
insert new_tree values ( '1','2');
insert new_tree values ( '1','3');
insert new_tree values ( '2','4');
insert new_tree values ( '2','5');
insert new_tree values ( '3','6');
insert new_tree values ( '3','7');
insert new_tree values ( '3','8');
insert new_tree values ( '6','9');
insert new_tree values ( '5','10');
insert new_tree values ( '4','11');
insert new_tree values ( '9','12');
insert new_tree values ( '7',NULL);
insert new_tree values ( '8',NULL);
insert new_tree values ( '10',NULL);
insert new_tree values ( '11',NULL);
insert new_tree values ( '12',NULL);

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus