الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

مشكلة الربط بين جدولين

Featured Replies

بتاريخ:

السلام عليكم

لدي مشكلة في الربط بين جدولين

ولكن العلاقة من Forign Key الى Unique في الجدول الاساسي وليس الى Praimary Key
علما ان Unique لحقلين مركبين

تظهر لي رسالة خطاء ORA-02270

no matching unique or primary key for this column-list

هل من الممكن في الاوركل انشاء تلك العلاقة

حيث انها تعمل في الاكسس ولاتوجد مشكلة في العلاقة

وشكرا

بتاريخ:

اخي العلاقة ممكنه ولاكن هل يمكن التوضيح اكثر مثلا كم عدد الحقول في الForign Key و الامر الذي استخدمته للربط

بتاريخ:

اخى الكريم /
لعمل الربط بين جدولين هناك طريقتين :
اما ربط مؤقت وهو يتم داخل جمل الـ Select
مثال

Select e.employee_id, e.last_name, d.deptartment_name
from employee e  department d
where e.department_id = d.department_id


وهذا ليس عليه اى قيود

اما النوع الثانى وهو عمل قيد دائم Foreign Cosntraint لعمل علاقة بين الجدول
ويتم انشاؤه اثناء انشاء الجدول او بعد انشاؤه
مثال

Create table employee (id number(7), last_name varchar2(40), department_id number(5) constraint employee_dept_id_fk references departments(department_id), salary number (7,2));



وهذا الطريقة الاولى

اما الطريقة الثانية

Alter table employee add constraint employee_dept_kf foreign key (department_id) references departments(department_id;



وهذا الطريقة تستخدم اذا كان الجدول موجود من قبل

ويجب ان اردت عمل قيد Foreign Key لابد ان يتم الربط بحقل Primary Key
فى المثال السابق الحقل department_id يمثل الـ Primary Key لجدول Departments

بتاريخ:
  • كاتب الموضوع

السلام عليكم
بالنسبة للاخ elfatih_s
عدد الحقول في الForign Key حقيلن ومايقابلها في الجدول الاساسي ايضا حقلين

اما الاخ Osama Soliman

نورت الموضوع ويعطيك العافية على مرورك

اخي الكريم انا كنت اسال عن الربط مع UNIQUE وليس Primary Key

واانت اوضحت انه لايمكن في عبارتك

ويجب ان اردت عمل قيد Foreign Key لابد ان يتم الربط بحقل Primary Key
فى المثال السابق الحقل department_id يمثل الـ Primary Key لجدول Departments


وشكرا لكم

بتاريخ:

اخي العزيز جرب هذه الطريقة كمثال

create table table1
( col1 number (10)
 , col2 number(10)
 , constraint col1_col2_UQ  unique (col1,col2))



create table table2
( col3 number (10)
 ,col4  number(10)
 ,constraint col3_col4_FK Foreign Key (col3,col4) 
  references table1(col1,col2) )

بتاريخ:

الاخ الكريم Mn_902
الكلام الذى اشرت اليه فى الرد السابق

ويجب ان اردت عمل قيد Foreign Key لابد ان يتم الربط بحقل Primary Key

يسرى ايضاً عند وجود unique key

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.