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

العلاقات قي oracle .

مغلق
بدأه عزت الحروي في 10 يناير 2003 · 5 رد · 2,297 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ولاحمة االله

أريد فكرة بسيطة عن العلاقات قي oracle ؟

وشكرا

ezzatalherwi@hotmail.com

#2

العلاقات في أوراكل ؟؟؟؟ :eek: أرجو التوضيح والتحديد

#3

علاقات كلها تآلف وتعاضد فيما بينها احسن من البشر!!

خذ مثلا مفهوم ال pk و ال fk

Pk : هو المحدد الأساسة للجدول الذي ابنيه وبناء عليه لا يسمح لي بادخال اي تكرار في البيانات واستطيع تحديد حقوله عند بناء الtable او اعمل

later modification

for example:

creat table emp(eno number,ename varchar2(20),

constraint mm_pk primary key(eno))

الان اذا اردت انشاء علاقة بين هذا الملف وملف اخر عن طريق مفهوم fk

اي انه من خلال الرابط fk لا تستطيع اضافة معلومة الرابط غير مدخلة في السجل الأم.

form example::

ملف emp مرتبط بملف الحركات

create table transaction(eno number,tno number,tdate date,

constraint xx_fk foreign ke(eno) refernces emp(eno));

وهكذا لا تستطيع ادخال حركة لموظف غير موجود!!!!!!!!!!!!!!!!!!!

so that's it

#4

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

أريد كيفية عمل علاقة one to many or many to one

#5

جزي الله الاخت شيماء عنا، فقد اجابت قبل الكل، وللتبسيط (لاحظ ان one to many = many to one) فلا فرق،كل الفكرة انك تقوم بتكوين كونسترين على مستوى الدليل الاساسي على ان يكون PK وبالتالي لن تسمح لك الاوراكل ان تدخل قيم مكررة في هذا الحقل، وهنا تكون الجزء الاول (ONE) ثم تقوم كما أوضحت لك الاخت شيماء بعمل ربط بين هذا الحقل، وحقل في الجدول الهدف والذي يمثل الجزء الثاني (to many) على ان يكون على هذا الحقل كونسترين FK مرتبط بالحقل الاول في الجدول الاول، وهو حقل قابل للتكرار، ولكن لا يمكن ادخال قيمة فيه دونما ان تكون موجودة في الحقل الاول، ومن شروط هذه الطريقة، التطابق في نوعية وطول الحقلين الاول والثاني

#6

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

****************************************************

اخي الكريم عزت الحروي لك مني تحيه طيبه

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

كانو في السابق يستخدمون النظام الشبكي والنظام الهرمي الى ان وصلو الى النظام العلاقي وهي ماهي عليه قواعد البيانات الحاليه.....اذن فعليك ان تعرف ان طريقة العلاقات ثابته في كل قواعد البيانات سواء كانت اوراكل او اكسيس او فوكس برو او فوكس بيز او اس كيو ال سيرفر........الخ فـ اوراكل ليس لها طريقه في العلاقات مختلفه عن البقيه .

واود ان اخبرك باني سوف اقدم درس كامل عن موضوع التصميم والعلاقات وكيفية انشائها .......الخ ....في اقرب فرصه لي ان شاء الله .

ولكن سوف اجيب عن سؤالك الحالي وذلك ربما قد لاتستطيع الانتظار .

اولا بالنسبه للعلاقه التي ذكرتها والتي هي one to many or many to one فان العلاقه one to many = many to one يعني نفسها مثل 2*1 هي 1*2

ثانيا يجب ان تعرف بان العلاقه هي التي تنشأ نفسها وليس لاحد ان يضع العلاقه كما يشاء ..........مثال لكيف تحدد العلاقه نفسها :

لنفرض انك تريد ان تصنع برنامج للجدول الدراسي للجامعه :

تبدأ بجمع المتطلبات وفهمها جيدا ومن ثم تنتقل لانشاء ERD

(نبدأ في جزء من البرنامج الذي يوضح العلاقه التي تريدها )

تبدا اولا في انشاء الجداول (في حالة التصميم تسمى Entity ) وبعد ان انشانا الجداول نبدا في العلاقات . ماهي علاقة كل جدول بالاخر .

البرنامج يتكون من عدة جداول ولكن سوف ناخذ فقط جدولين حتى اوضح لك كيف تحدد العلاقه (جدول المدرسين وجدول الشعب ) .

من تحليلك للمتطلبات سوف يتضح لك :

الشعب :

1- كل شعبه لها رقم خاص بها لايتكرر

2- الشعبه لايدرسها الا مدرس واحد فقط

المدرسين :

1- كل مدرس يدرس شعبه واحده او اكثر

2- المدرس يملك الشعبه

الان هل تستطيع ان تقول لي ماهي العلاقه بين الشعب والمدرسين .

فكر...........فكر

عرفت

صح عليك .....ممتاز

العلاقه هي one to many or many to one

لان المدرس يدرس اكثر من شعبه والشعبه الواحده لايدرسها الا مدرس واحد .

انا اتمنى لو كنت اعرف كيف اضع صوره هنا لاريتك الرسمه حتى تفهم اكثر .

جرب وضع جدول في اليمين واكتب فيه ارقام الشعب وجدول اخر في اليسار واكتب ارقام المدرسين ثم وصل خط من اليسار الى اليمين تبعا للشروط السابقه وسوف توضح اكثر .

انتهينا الان.....

لا لا لم ننتهي بعد انت الان حددت العلاقه على ورق لكن كيف تحولها الى الى تطبيق فعلي حتى تصنع البرنامج هل تضعها هكذا كما رسمتها ؟

لا طبعا العلاقه التي انت انشاتها كانت على ورق وانت تفهمها لكن الجهاز لايفهم ماهو مكتوب على الورق ..............اذن ماذا بقي ؟؟؟؟؟

باقي ان نحولها الى Schema Relation حتى يفهما برنامج قواعد البيانات .

طيب اخي عزت .....كيف نحولها ؟؟؟

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

نفرض :

انه في جدول الشعب لدينا حقل اسمه رقم الشعبه وهو PK

انه في جدول المدرسين يوجد حقل اسمه رقم المدرس وهو PK

نبدأ الان

العلاقه one to many or many to one :

قانون العلاقه one to many or many to one تقول :

ان تأخذ حقل PK الموجود في الجدول الذي جهته One وتضعه في الجدول الذي جهته Many ويصبح FK .

انتهينا

من جد انتهينا

والله يوفقك

وتحياتي لك

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

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