الانتقال إلى المحتوى

خطأ فى تنفيذ كود Merge


hanyfreedom

Recommended Posts

create table ddd as select*from departments;



و بعد عمل جدول ال ddd الذى هو نسخة مطابقة لل Departments قمت بعمل ببعض التغير فيه :-

update ddd
set department_id=111
where department_name like'%e%';



و تم تغير 16 صف حيث تحول ال department_id - اللى فى ال 16 صف دول - الى رقم 111

ثم قمت بعمل ال Merge التالية :-

merge into ddd d using departments dd
on (d.department_id=dd.department_id)
when matched then update set
d.DEPARTMENT_ID=dd.DEPARTMENT_ID,
d.DEPARTMENT_NAME=dd.DEPARTMENT_NAME,
d.MANAGER_ID=dd.MANAGER_ID,
d.LOCATION_ID=dd.LOCATION_ID
when not matched then insert values
(dd.DEPARTMENT_ID,dd.DEPARTMENT_NAME,
dd.MANAGER_ID,dd.LOCATION_ID);



فظهر لى هذا الخطأ الذى لا أفهم ما معناه و ما قصده منه :-

on (d.department_id=dd.department_id)
*
ERROR at line 2:
ORA-38104: Columns referenced in the ON Clause cannot be updated:
"D"."DEPARTMENT_ID"



أرجو انا يقول لى أحد ما المشكلة هنا .... و كيفية حلها ...... شكراً و منتظر الرد

رابط هذا التعليق
شارك

ما بصير تحط عمود الjoin في جملة ال update لتصبح الجملة كالتالي:

merge into ddd d using departments dd
on (d.department_id=dd.department_id)
when matched then update set
d.DEPARTMENT_NAME=dd.DEPARTMENT_NAME,
d.MANAGER_ID=dd.MANAGER_ID,
d.LOCATION_ID=dd.LOCATION_ID
when not matched then insert values
(dd.DEPARTMENT_ID,dd.DEPARTMENT_NAME,
dd.MANAGER_ID,dd.LOCATION_ID);



انا قمت بحذف الجملة d.DEPARTMENT_ID=dd.DEPARTMENT_ID,
اللي بعد ال update
وبهيك راح تشتغل ان شاء الله

رابط هذا التعليق
شارك

بارك الله فيك أخى nhamzehn هذه كنت فعلاً المعضلة ، و ماخدتش بالى منها خالص
شكراً جزيلاً

رابط هذا التعليق
شارك

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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