Right now, you are using the "adjacency list" model. It has several downsides, chief among them the fact that it is essentially impossible to write a query that will return you all the trees that you are storing.

You may want to consider switching to the "nested set" model, which is well explained on that same page.