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

كيف أكون مفتاح غريب لعمود في جدول ما ؟؟

مغلق
بدأه alQassam في 27 ديسمبر 2007 · 6 رد · 2,244 مشاهدة · في قواعد بيانات MySQL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الكرام

أنا أتعلم الـ mysql بطريقة إدخال التعليمات والتعديلات عن طريق الدوز

لأني مبتدئ وأريد أن أتقوى بالأوامر

فما هي الصيغة التي يجب أن أكتبها لجعل عمود ما ، مفتاح غريب ؟؟

علما بأن توأم هذا العمود هو مفتاح أساسي في جدول آخر

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

تم تعديل هذه المشاركة بواسطة alQassam في 27 ديسمبر 2007 في 03:51

#2

[

السلام عليكم

أخي إن شاء الله الطريقة سهلة ولكن هل تستطيع وضع الجدولين حتى يسهل الشرح

تم تعديل هذه المشاركة بواسطة Ahmad_T في 28 ديسمبر 2007 في 21:00

Logo150_60.jpg
#3

من الامور الاساسية عند انشاء جدول في لغه MySQL هو اختيار نوع المحرك

في لغه MYSQL يوجد عدة انواع من المحركات و اشهرها MyISAM و يتم اختيار هذا المحرك تلقائيا اذا لم تختر اي نوع

المهم في حالتنا يجب ان نختار نوع المحرك InnoDB إن شاء الله مع المثال المدرج سيتضح ما اعنيه

CREATE TABLE customer

(

customer_id INT NOT NULL,

name VARCHAR(30),

PRIMARY KEY (customer_id)

) TYPE = INNODB;

CREATE TABLE customer_sales

(

transaction_id INT NOT NULL,

amount INT,

customer_id INT NOT NULL,

PRIMARY KEY(transaction_id),

INDEX (customer_id),

FOREIGN KEY (customer_id) REFERENCES customer (customer_id)

) TYPE = INNODB;

يجب تعريف العمود الغريب على انه index

الجدولين يجب ان يتم تعريفهما على انهم InnoDB

استخدام هذة الصيغة للدلالة على ربط المفتاح الغريب مع الاساسي FOREIGN KEY (****) REFERENCES **** (*****)

تم تعديل هذه المشاركة بواسطة Ahmad_T في 30 ديسمبر 2007 في 09:03

Logo150_60.jpg
#4

يا عيني عليك

شرح ممتاز


(
customer_id INT NOT NULL,
name VARCHAR(30),
PRIMARY KEY (customer_id)
) TYPE = INNODB;


CREATE TABLE customer_sales
(
action_id INT NOT NULL,
amount INT,
customer_id INT NOT NULL,
PRIMARY KEY(transaction_id),
INDEX (customer_id),
FOREIGN KEY (customer_id) REFERENCES customer (customer_id)
) TYPE = INNODB;
CREATE TABLE customer

في الجدول الثاني وضعت المفتاح الأساسي بعمود اسمه transaction_id

وهو غير موجود في الجدل الثاني ، فهل هو خطأ مطبعي أم ماذا ؟ لأني احترت والله !

وجزاك الله الجنة على المساعدة

تم تعديل هذه المشاركة بواسطة alQassam في 30 ديسمبر 2007 في 02:40

#5

تم التعديل

كان خطأ مطبعي transaction_id بدل action_id

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

Logo150_60.jpg
#6

مشكور على المعلومة...

بس عندي استفسار بالنسبة للسوبر كي والفورن كي شو بفرقن من الناحية القواعدية والعملية؟؟؟

#7
المارد01 كتب:
مشكور على المعلومة...

بس عندي استفسار بالنسبة للسوبر كي والفورن كي شو بفرقن من الناحية القواعدية والعملية؟؟؟

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

في كثير من الحالات نحتاج الى عمود واحد لتمييز سطر, هذا العمود يسمى برايمري كي ..المفتاح الاساسي..

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

فيجب ان تكون خصائص الفورون كي مطابقه للبرايمري كي, فاذا كان البرايمري مخصص للارقام ويقبل خانتين فقط فيجب على الفورون ان يكون كذلك

يجب وضع القيم في البرايمري قبل الفورون

تم تعديل هذه المشاركة بواسطة Ahmad_T في 9 يناير 2008 في 04:27

Logo150_60.jpg

هذا الموضوع مغلق.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…