这个问题我以前遇到过,可以有多种思路我想最好大家都来写个树图数据保存的表结构看看
我的不是很好但很直接,看看还有没有更快的,都来写个思路,比较一下,做软件,这个东西可
用得比较多,谁好就用谁的,都来出主意
 a|->b->c
  |  |->d
  |
  |->e   
从图上看A是最大的父级 B和E是第二级  C和D是第三级  C和D都在B包含中
以此树图为例子
方法其实很多,考虑能根据表读得出,还有要写得回去.
那么数据库里有两个字段,一个节点位置,一个节点名
0001             a 
00010001         b 
000100010001     c 
000100010002     d 
00010002         e在treeview上修改后,如何把这样的treeview导入数据库呢?

解决方案 »

  1.   

    要導入數據庫,無非就是產生SQL語句的事
    但有一點,如果在之前,這個表已經存在數據,那就應該比較節點的位置,然後修改節點名
    否則將會出現節點重復所以要麼就是在SQL語句中寫出形如:
    if exixts(select * from tablename where nodeno='0001')
      update tablename set nodename='a' where nodeno='0001'
    else
      insert into tablename select '0001','a'或者也可以一次性刪除所有的記錄,然後再執行插入
    形如:
    insert into tablename
      select '0001','a' union
      select '00010001','b'當然還有一種方式是將所有的數據下載到本地,調用緩存更新,
    然後用Locate定位,如果定位得到,就Edit
    否則就Insert
    最後提交即可
      

  2.   

    这样去解析有必要吗?为什么不变成三个字段了?
    ID Parent Value
    那不是相当简单明了