سلام
ببخشید پا برهنه وسط بحث میپرم
روشی که من در برنامه نویسی استفاده میکنم و موفق هم بودم اینه که برام مهم نیست که چند رده مجموعه و زیر مجموعه باید داشته باشه من همه دسته بندی رو توی یک جدول انجام میدم و کد دهی میکنم به این ترتیب فرضا که هر رده یک کد 4 رقمی میگیره و کد اون بصورت استرینگ با کد والدش مرج میشه بقیه فیلدها هم بطور معمول میذارم مثلا مثال زیر رو دقت کنید
0001
00010001
00010002
00010003
000100010001
000100010002
000100020001
000100020002
000100020003
0001000200030001
به این ترتیب شما میتوانید n رده را بر حسب طول فیلد طراحی کنید بدون اینکه نیاز به جداول اضافی داشته باشید تنها ایراد این نوع طراحی لزوم کد نویسی زیادتر اون است که این کار رو من توی sql server با sp انجام دادم در ضمن اینکه کلیه کنترلها رئ در سطح دیتا بیس انجام دادم