0

MySQL 関数を使用してツリーをコピーしたいと考えています。私のテーブル構造は次のようになります。

id|parent_id|name|position
1|0|rootnode|1
2|1|firstchild|1
3|1|secondchild|2
4|0|anotherroot|2
5|4|anotherchild|1

コピーすると、次のようになります (覚えておいてください: id は autoinc です!):

id|parent_id|name|position
6|0|rootnode|1
7|6|firstchild|1
8|6|secondchild|2
9|0|anotherroot|2
10|9|anotherchild|1

これは可能ですか?MySQLで再帰関数は可能ですか? MySQL のバージョンは 5.0.95 です

よろしくお願いします ...

4

1 に答える 1

0

マニュアルからの抜粋:

ストアド関数は再帰できません。

ストアド プロシージャでの再帰は許可されていますが、既定では無効になっています。

コメントとしてMeherzadによって提供されたリンクは、手順でツリーをスキャンする方法を示しています。このリンクは、IN および OUT プロシージャ パラメータを使用して関数呼び出しをエミュレートする方法に関するヒントを提供します。

于 2013-04-29T08:55:49.097 に答える