القائمة الرئيسية

الصفحات

العلاقة Relationships Self Join فى SQL Server


السلام عليكم ورحمة الله وبركاته

الدرس الرابع من دروس العلاقات  Self Join وهى ربط الجدول مع نفسه .

قبل البدء يجب معرفة لماذا نبنى هذه العلاقة ... إذا كان عندك برنامج محاسبى به الشجرة المحاسبية أو بناء نظام شجرة العائلة
أو إنشاء نظام به أقسام متداخلة على سبيل المثال قسم أجهزة موبايل وجولات يندرج تحتها قسمين جوالات و تابلت ويندرج تحت قسم الجولات انواعها مثل  Samsung - IPhone - Sony  ... الخ .

وكل نوع من هؤلاء يندرج تحته انواعه على سبيل المثال IPone له (IPone X - IPone S - IPone 11 ....إلخ) .حتى وان كان تحت هذه الانواع انواع فرعية آخرى أو أقسام تحت بعظها لا حصر لها .. لا مشكلة
إيضا نظام مبيعات للتسويق الشبكى  والاعضاء المندرجة تحت بعضها والمعروفة بإسم UpLine .
القائمة من الأمثلة تطول وكلها تحتاج نوع علاقة واحد وهو  Self Join  بجدول واحد فقط .

نفتح SSMS ونقوم بإنشاء جدول جديد بإسم TblCategories مثل صورة عنوان الدرس
 { Id = int } &  {SubId = int} & { CategoryName= nvarchar(50) }

SubId هنا هو حقل فرعى يربط مع الحقل Id و الحقلين نفس نوع البيانات int مع ملاحظة ان الحقل Id له مفتاح اساسى.

مثل الدروس السابقة للعلاقات من قائمة Table Designer نختار Relationships ثم Add

 Primary Key Table هو نفس الجدول الموجود فى Foreign Key Table

 Foreign Key Table = SubId  & Primary Key Table = Id

 الحقل CategoryName بيكون أما إسم القسم الاساسى أو القسم الفرعى المندرج تحت الاساسى كما شرحنا بالاعلى

وهكذا انهينا العلاقة بين الجدول ونفسه ، ويمكنك الأضافة يدويا فى قاعدة البيانات لتجربة شكل إدخال البيانات

وسوف نشرح ان شاء الله استغلال جميع العلاقات فى برنامج تدريبى بلغة C# .

 

تعليقات