عرض مشاركة واحدة
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
قديم 24-04-2010, 07:18 AM   #5

techno

جامعي

الصورة الرمزية techno

 
تاريخ التسجيل: Oct 2009
التخصص: IT
نوع الدراسة: إنتظام
المستوى: الخامس
الجنس: ذكر
المشاركات: 47
افتراضي رد: سؤال في الداتابيس ؟؟؟

composite key / يعني المفتاح المركب .. اذا كان عندك 2 اتريبيوت .. وتشوفين انهم الاثنين مستحيل يتكررون مع بعض .. تخلينهم كومبسيت كي ..
على سبيل المثال
عندك جدول للموظف . وجدول اخر للمعانين من قبل الموظف ( يعني ابناءه)
وفي بجدول المعانين . بعض الاتريبيوت ( رقم الموظف - اسم المعان - جنسه - عمرة )
هنا راح نستخدم مفتاحين . اللي هم رقم الموظف مع اسم المعان
لان ممكن اسم المعان يتكرر ( ما نقدر نخليه مفتاح لوحده ) - ممكن الموظف الفلاني له نفس اسم ابن الموظف الاخر
ورقم الموظف لو مثلا خليناه برايمري كي .. مانقدر لان الموظف الواحد له كذا ابن ( بنضطر اننا نكرر رقم الموظف لابناءه ) وهذا نسميه فورين كي .. راح اشرحه لك بالنهاية
فـ نحل هالمعضلة بوضع رقم الموظف واسم الموظف كومبسيت كي مثال
Emp_ID Name
خالد 0123
احمد 0123
الان لمى نجي لعملية التشييك . راح يشيك عليهم الاثنين ك كومبسيت كي بهالشكل
0123خالد != 0123أحمد
اذا لايوجد هناك تكرار :)

--------------
ثانياً ال foreign key
إذا كان عندك اتريبيوت . . اصلها جزء من اتريبيوت ثانية .. هذي نسميها فورين كي

على سبيل المثال عندك اتربيوت ( رقم الموظف ) وعندك اتربيوت ثانية ( رقم الموظف للمدير )

الان (رقم الموظف للمدير) يعتبر فورين كي .. لان اساس اي مدير هو موظف ..

الاتربيوت ( رقم الموظف للمدير ) تؤشر على ( رقم الموظف ) لانها عائدة عليه ..

وطبعا بالمناسبة فيه اكويجن مهمة وجاتنا في الاختبار

اتوقع ان الدكتور شرحها لكم :) ..اذا منتم فاهمينها . اكتبي لي رد يصير اكتب شرح مبسط عليها
--------------------------------------------
أما البرايمري كي هو اسهل شئ .. اي اتربيوت تشوفينه بالجدول وتكون له قيم محددة - مو فاضية - وغير مكررة
تقدرين تعتبرينه لوحده برايمري كي .. ومانحتاج هنا للكومبسيت كي .. لان الشروط تحققت للكي :)

تحياتي

 

توقيع techno  

 

ڪل شئ في » عـيؤني ذآبل « مثل أورآق
آلخريف. غيًم ؤنجؤم وسنآبل , ؤخطوتي فؤق ™ آلرصيًف !

 


التعديل الأخير تم بواسطة techno ; 24-04-2010 الساعة 07:27 AM.
techno غير متواجد حالياً   رد مع اقتباس