A category has only one parent, but potentially many children?
Easy: Each category has a unique ID, autoincrement, not null. Each category also has a parent ID field, potentially null. If the category is not a root-level category, its the parent ID field should contain the unique ID of its parent. Tada.