ڈیٹا بیس تعلقات

ڈیٹا بیس کے تعلقات تمام متعلقہ نسبتا ڈیٹا بیس کی ریبون ہیں

ایک رشتہ دو ڈیٹا بیس کی میزیں کے درمیان قائم کیا جاتا ہے جب ایک میز ایک غیر ملکی کلیدی ہے جس میں کسی دوسرے میز کی بنیادی کلید کا حوالہ دیا جاتا ہے. یہ اصطلاح نسبتا ڈیٹا بیس کے پیچھے بنیادی تصور ہے.

رشتہ قائم کرنے کے لئے کس طرح ایک غیر ملکی کلیدی کام کرتا ہے

چلو بنیادی اور غیر ملکی چابیاں کی بنیادیات کا جائزہ لیں. ایک بنیادی کلید منفرد طور پر میز میں ہر ریکارڈ کی شناخت کرتا ہے. یہ ایک قسم کی امیدوار کی کلید ہے جس میں عام طور پر ایک میز میں پہلا کالم ہے اور خود کار طریقے سے ڈیٹا بیس کی طرف سے پیدا کیا جاسکتا ہے کہ یہ منفرد ہے.

ایک غیر ملکی کلید ایک اور امیدوار کی کلیدی ہے (بنیادی کلید) کسی اور میز میں ڈیٹا کو ریکارڈ کرنے کے لئے استعمال کیا جاتا ہے.

مثال کے طور پر، ان دو ٹیبلوں پر غور کریں جو اس بات کی شناخت کرتے ہیں کہ کونسی اساتذہ کون سی نصاب کرتا ہے.

یہاں، کورسز کی میز کی بنیادی کلید کورس_ID ہے. اس کی غیر ملکی کلید استاد ٹی آئی ڈی ہے:

کورسز
کورس_ID Course_Name ٹیچر_ڈ
کورس_001 حیاتیات ٹیچر_001
کورس_002 ریاضی ٹیچر_001
کورس_003 انگریزی ٹیچر_003

آپ دیکھ سکتے ہیں کہ نصاب میں خارجی کلی اساتذہ میں بنیادی کلید سے ملتا ہے:

اساتذہ
ٹیچر_ڈ ٹیچر کا نام
ٹیچر_001 کارن
ٹیچر_002 ویرونیکا
ٹیچر_003 جارج

ہم کہہ سکتے ہیں کہ استاد_یڈیل کلیدی نصاب اور اساتذہ کی میزوں کے درمیان تعلقات قائم کرنے میں مدد ملی ہے.

ڈیٹا بیس تعلقات کی اقسام

غیر ملکی چابیاں، یا دیگر امیدواروں کی چابیاں کا استعمال کرتے ہوئے، آپ میزیں کے درمیان تین قسم کے رشتے پر عمل درآمد کر سکتے ہیں:

ایک سے ایک : اس قسم کے رشتہ تعلقات کی ہر طرف صرف ایک ریکارڈ کی اجازت دیتا ہے.

بنیادی کلید صرف ایک ریکارڈ سے متعلق ہے - یا کوئی - کسی اور میز میں. مثال کے طور پر، ایک شادی میں، ہر ایک کاؤنٹر صرف ایک دوسرے کے شریک بھائی ہے. اس قسم کا تعلق ایک سنگل ٹیبل میں نافذ کیا جا سکتا ہے اور اس وجہ سے غیر ملکی کلید کا استعمال نہیں کرتا.

ایک سے زیادہ : ایک سے زیادہ تعلقات ایک میز میں ایک ہی ریکارڈ میں کسی دوسرے میز میں کئی ریکارڈوں سے متعلق ہونے کی اجازت دیتا ہے.

ایک ڈیٹا بیس کے ساتھ ایک کاروبار پر غور کریں جو گاہکوں اور احکامات کی میزیں ہیں.

ایک گاہک ایک سے زیادہ احکامات خرید سکتا ہے، لیکن ایک آرڈر ایک سے زیادہ گاہکوں سے منسلک نہیں کیا جاسکتا. لہذا حکم کے ٹیبل میں ایک غیر ملکی کلید شامل ہوگی جس میں گاہکوں کی میز کی بنیادی کلیدی سے ملتی ہے، جبکہ گاہکوں کی میز کے اندر اندر کی میز پر غیر ملکی کی نشاندہی نہیں ہوگی.

بہت سے سے زیادہ : یہ ایک پیچیدہ تعلق ہے جس میں ایک میز میں بہت سے ریکارڈ کسی دوسرے میز میں کئی ریکارڈز سے منسلک کرسکتے ہیں. مثال کے طور پر، ہمارے کاروبار کو صرف گاہکوں اور احکامات میزوں کی ضرورت نہیں ہے، لیکن اس کی وجہ سے مصنوعات کی میز کی ضرورت ہے.

پھر، گاہکوں اور احکامات کی میز کے درمیان تعلقات ایک سے زیادہ ہے، لیکن آرڈر اور مصنوعات کی میز کے درمیان تعلق پر غور کریں. ایک آرڈر میں ایک سے زیادہ مصنوعات شامل ہوسکتی ہے، اور ایک مصنوعات کو ایک سے زیادہ احکامات سے منسلک کیا جا سکتا ہے: بہت سے گاہکوں کو یہ حکم پیش کر سکتا ہے جو کچھ ہی مصنوعات میں شامل ہو. اس قسم کا تعلق کم سے کم تین میزوں پر ہوتا ہے.

ڈیٹا بیس تعلقات کیا اہم ہیں؟

ڈیٹا بیس میزوں کے درمیان مسلسل تعلقات قائم کرنا ڈیٹا بیس سالمیت کو یقینی بنانے میں مدد کرتا ہے، جس میں ڈیٹا بیس کی معمول میں اضافہ ہوتا ہے. مثال کے طور پر، اگر ہم کسی بھی میز کو کسی غیر ملکی کلید کے ذریعے نہیں جوڑتے ہیں اور اس کے بجائے کورسز اور اساتذہ کی ٹیبلز میں اعداد و شمار کو بھی شامل کرتے ہیں، جیسے:

اساتذہ اور کورسز
ٹیچر_ڈ ٹیچر کا نام کورس
ٹیچر_001 کارن حیاتیات، ریاضی
ٹیچر_002 ویرونیکا ریاضی
ٹیچر_003 جارج انگریزی

یہ ڈیزائن غیر لچکدار ہے اور ڈیٹا بیس کی معمول، پہلا عمومی فارم (1 این ایف) کے پہلے اصول کی خلاف ورزی کرتا ہے، جس میں یہ بتاتا ہے کہ ہر میز پر سیل ڈیٹا کا واحد، ڈسکوک ٹکڑا ہوتا ہے.

یا شاید ہم نے 1NF نافذ کرنے کے لئے، کارمین کے لئے ایک دوسرے ریکارڈ کو آسانی سے شامل کرنے کا فیصلہ کیا ہے:

اساتذہ اور کورسز
ٹیچر_ڈ ٹیچر کا نام کورس
ٹیچر_001 کارن حیاتیات
ٹیچر_001 کارن ریاضی
ٹیچر_002 ویرونیکا ریاضی
ٹیچر_003 جارج انگریزی

یہ اب بھی ایک کمزور ڈیزائن ہے، غیر ضروری نقل و حرکت متعارف کرانے اور ڈیٹا انٹریشن انملیوں کو کیا کہا جاتا ہے، جس کا مطلب یہ ہے کہ یہ متضاد اعداد و شمار میں حصہ لے سکتا ہے.

مثال کے طور پر، اگر ایک استاد بہت سے ریکارڈ ہے، تو کیا کچھ اعداد و شمار میں ترمیم کی ضرورت ہے، لیکن اعداد و شمار میں ترمیم کرنے والے شخص کو یہ احساس نہیں ہے کہ کئی ریکارڈ موجود ہیں؟ اس میز میں اسی فرد کے لئے مختلف اعداد و شمار شامل ہوں گے، اس کے بغیر اس کی شناخت یا اس سے بچنے کے بغیر کوئی واضح راستہ ہوگا.

اس میز کو دو میزیں، اساتذہ اور نصاب (جس کے اوپر ملاحظہ کیا گیا ہے) میں اعداد و شمار کے درمیان مناسب تعلق پیدا ہوتا ہے اور اس وجہ سے ڈیٹا کو استحکام اور درستگی کو یقینی بنانے میں مدد ملتی ہے.