Modified Preorder Tree Traversal
This is a method which uses a non-recursive function (usually a single line of SQL) to retrieve trees from the database, at the cost of being a little trickier to update.
**
Section 2 of the Sitepoint article Storing Hierarchical Data in a Database for more detail.