الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

لا أجد الmaster/details وال Foriegn Key

بدأه jinan في 6 أكتوبر 2008 · 10 رد · 2,012 مشاهدة · في قواعد بيانات MySQL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

اخواني الكرام لدي مشروع تخرج في هذا الفصل واعااااااااني وبشدة من ال داتا بيس

المشروع هو عبارة عن موقع تجاري لشركة يعني

e-commerce

والداتا بيس عم نشتغل فيها على

PhpMyadmin/Mysql

الدكتور المشرف طلب منّا شيئ اسمه الماستر ديتيلز وما عم ألاقيهامن وين بنجيبها

كمان شغلة هي ال

!!foriegn key

برضه ما عم نلاقيها

ارجوكم :(

#2

:(

:(

ارجوكم اللي بعرف الإجابة ما يبخل عليي فيها

والله يوفقه سلفا

#3

و عليكم السلام

هذا شرح مبسط لل foriegn key

/index.php?showtopic=147164&hl=

اما بالنسبة للmaster detail إن شاء الله ساحاول الشرح عنها غداً

تم تعديل هذه المشاركة بواسطة Ahmad_T في 10 أكتوبر 2008 في 03:11

Logo150_60.jpg
#4

الله يجزيك الخير اخي الكريم

بانتظار شرح ال master /details

لكن عندي سؤال لو تكرمت بخصوص المفتاح الغريب سمعت انه يجوز عدم الاشارة الى المفتاح الغريب في الجداول لأنه غير ضروري اذا كانت البرمجة بالبي اتش بي

كذلك بالنسبة للعلاقات بين الجداول غير مهمة في المايسكيول لأنه يمكن التعامل مع الجداول بسهولة دون الحاجة لوجود علاقات خلال برمجة البي اتش بي

هل هذا الكلام صحيح

وهل يمكنني الإكتفاء ببناء الجداول فقط دون تحديد المفتاح الغريب والعلاقات

ارجو الإجابة

مع خالص الشكر

#5

الphp ليس لها اي علاقة بالمفتاح الغريب

المفتاح الغريب وظيفتة وصل جدولين او عدة جداول و نقوم بالوصل إذا كنا نريد الاستعلام عن هذه الجداول في آن واحد

_________________________________________________________________________

وعلى سبيل المثال: هذه قاعدة بيانات بسيطة لتخزين المجلات و تحتوي على 3 جداول

teamsh5.jpg

إذا كنا نود الاستعلام عن مجلة فسنقوم مباشرة بالبحث عن الISSN في جدول Journals, ولكن قاعدة البيانات ستظهر اعداد كثيرة لهذه المجلة

اما إذا كنا نود البحث عن عدد معين فسنقوم بالاستعلام في الجدولين: الجدول Journals لاخذ تفاصيل المجلة و الجدول Journals_Volume لمعرفة رقم العدد المطلوب

الجدول admin غير مرتبط بأي جدول آخر وذلك لاننا فقط نريد الاستعلام عن إسم المستخدم وكلمة المرور

ال ISSN الموجود في Journals هو المفتاح الرئيسي وذلك لانه رقم مميز لأي مجلة (في الحياة العملية يستحيل وجود نفس الISSN في مجلتين)

ال ISSN الموجود في Journals_Volume هو المفتاح الغريب ويجب ان يحتوي على نفس خصائص المفتاح الاصلي في مثالنا هذا يجب ان يكون المفتاح الغريب رقم (مثل المفتاح الاصلي)

_____________________________________________________________________________

وللتاكيد : الphp ليس لها علاقة بالمفتاح الغريب

للعلم هذا المنتدى تم إنشائة بالphp ولا يستخدم المفاتح الغريبة

وبالخدمة عن اي استفسار

Logo150_60.jpg
#6

مشكور جدا اخي على المساعدة ربنا يبارك فيك ويجزيك الخير

بالمرفقات قاعدة البيانات بتمنى تشوفها وتحكيلي ازا صحيحة

اثقلت عليك بأسئلتي

مشكور مرة اخرى

project.rar

#7

يبدو انها سليمة

بالنسبة للجداول التي لا تستخدم علاقات حاول تغيير المحرك من InnoDB الى Myisam لسرعة البحث والاداء

Logo150_60.jpg
#8

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

ياريت توضحوا لنا طريقة ربط الجداول بphpmyadmin بالصور لاني انا اعمل على سيرفرالwamp..

حاولت زراعة قاعدة البيانات الي هنا عندي لكي ارى كيفية الربط فلم استطع..

هل لابد من وجود قيم بالجدول(رقم 1) الذي اريد ان اربطه مع جدول آخر؟؟

علماً بإن الجدول الآخر(رقم 2) قد تم وضع القيم فيه ..

لان الجدول الاول سيتم إدخال القيم إليه عن طريق صفحة الويب ..

أتمنى او اكون وضحت مااريد ..

جزاكم الله خير ..ياريت تساعدونا قبل السبت ..لان مناقشتنا قربة نحن لم نستطع الربط بين الجداول حتى الآن ..الله ييسر...

انتظر ردكم باركالله فيكم..

تم تعديل هذه المشاركة بواسطة أم تروكي في 16 أبريل 2009 في 20:36

#9

مثال بسيط لتوضيح الفكرة :

لدينا جدولين : الاول بيانات الموظفين والاخر لبيانات الفرع الذي يعمل به الموظف.

create table Branch
(
	 branchId varchar(5) primary key,
	 // ..etc
) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_bin;

create table employees
(
	id int primary key,
	name varchar(20),
	//...etc
	branchId varchar(5) not null,
	foreign key (branchId) references Branch(branchId) on delete cascade on update cascade
) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_bin;

الان لكي يتم ادخال بيانات الموظفين ، يجب اولا ان تكون هناك بيانات للفروع ، وذلك لان حقل رقم الفرع للموظف هو حقل غريب .

بالتوفيق.

#10

تقصد انه لابد ان يكون جدول الفروع فيه بيانات صح؟؟

وجدول الموظفين مافيه بيانات بحيث ان الموظفين هم الذين يقومون بإذدخال بياناتهم عن طريق المتصفح مثلاً..

هل هذا ماقصدتم؟؟

لان انا عندي جدولين الاول لابد من ان يكون فارغ وهو الذي يكون فيه حقل المفتاح الاجنبي(مثلاً h) والثاني يكون فيه (h)هو المفتاح الاساسي صح كذا او انا غلطانه.؟؟

ياريت توجهونا بارك الله فيكم...

#11

نعم هذا ما اقصده.

مواضيع مشابهة