foreign key.. دعوه للنقاش
عندي سؤال محيرني..
لنفرض بعمل سكربت نكت.. دايما كنت اعمل بهذه الطريقه
جدول الاقسام:
حقل ال id .. ويكون ترتيب تلقائي و primary key
حقل اسم القسم ويكون varchar
جدول النكت:
حقل ال id ويكون تلقائي و primary key
حقل cat_id ويكون int مثل حقل ال id في جدول الاقسام
حقل اسم النكته
حقل النكته
حقل المضيف الخ الخ الخ
وعند اضافة نكته من السكربت يتم اختيار القسم وكتابة حقول النكته وعند الضغط على موافق يتم الاستعلام من جدول القسام ومعرفة ما هو رقم ال id للقسم الذي اخترته .. ويوضع في حقل ال cat_id .. للنكته مع باقي المعلومات..
فيصبح لدينا في جدول النكت مثلا
id: 1
cat_id: 4
title: نكتة عالسريع
joke: مره واحد اثنين ثلاثه..
الخ وكللللللللللله تمام
ندخل في صلب الموضوع
بعد تعمقي اكتر بال mysql قرأت عن ال primary وال foreign keys
رحت عامل القاعده الي كتبتها في البدايه نفس الشي ولكتني حددت ان حقل ال cat_id في جدول النكت يكون foreign key
هكذا:
كود:
creat table jokes (
id .............
cat_id int ..........
...............
.................
..............
foreign key (cat_id) reference category (id)
);
وتمت اضافة القاعده وكله تمام ولكننننن عند محاولة ادخال بيانات سواء اكانت صحيحه ام خاطئه.. المقصود بخاطئه هو اختيار رقم قسم غير موجود.. في الحالتين لا يضيف شئ في حقل ال cat_id .. وتظهر العباره null .
ليش هيك ؟
__________________
لا اله الا انت سبحانك اني كنت من الظالمين