求助!表内数据复制问题。
问题是这样的:
有个表是存储树形目录的数据的,结构为:
ID:int (节点ID)
Name:varchar(200) (节点名称)
P_ID:int (父节点ID)
cat_order:int (顺序)
KeyWord:varchar(200) (关键字)
比如说:有个树 他的关键字是EXAMPLE1 数据如下:
ID Name P_ID cat_order keyWord
1 名称1 null 0 EXAMPLE1
2 名称2 1 0 EXAMPLE1
3 名称3 1 1 EXAMPLE1
4 名称4 1 2 EXAMPLE1
5 名称5 2 0 EXAMPLE1
6 名称6 2 1 EXAMPLE1
7 名称7 3 0 EXAMPLE1
8 名称8 6 0 EXAMPLE1
那么这个树结构应该是这样的:
名称1
|___名称2
| |_名称5
| |_名称6
| |_名称8
|
|___名称3
| |_名称7
|
|___名称4
现在想要复制一份这个数据,使得Name和cat_order 不变(树结构也不变)
比如数据变成这样:
ID Name P_ID cat_order keyWord
1 名称1 null 0 EXAMPLE1
2 名称2 1 0 EXAMPLE1
3 名称3 1 1 EXAMPLE1
4 名称4 1 2 EXAMPLE1
5 名称5 2 0 EXAMPLE1
6 名称6 2 1 EXAMPLE1
7 名称7 3 0 EXAMPLE1
8 名称8 6 0 EXAMPLE1
-------下面是新生成的数据,保持了原来树的结构及名称顺序等,但是ID、P_ID、keyWord做了相应的改变。
9 名称1 null 0 EXAMPLE2
10 名称2 9 0 EXAMPLE2
11 名称3 9 1 EXAMPLE2
12 名称4 9 2 EXAMPLE2
13 名称5 10 0 EXAMPLE2
14 名称6 10 1 EXAMPLE2
15 名称7 11 0 EXAMPLE2
16 名称8 14 0 EXAMPLE2
=====================
说明:ID是主键,可以用max来生成唯一的,keyWord随便起名(定为EXAM吧)
希望大家能帮帮忙,谢谢了。