بتاريخ: 22 فبراير 200817 سنة comment_123002 السلام عليكم ورحمة الله وبركاته انا عملت جدول اسمه employees بنفس هيكل emp تمام على المستخدم scottودخلت فيه بيانات ولما اجيت اعمل merge بين الجدولين ظهرتلي المشكله دي ORA-38104: Columns referenced in the ON Clause cannot be updated: "M"."EMPNO" مع اني راجعت الكود اكتر من مره ومتاكده من صحته بس مش عارفه ايه المشكله وده الكود merge into employees m using emp e on (m.empno=e.empno) when matched then update set empno=e.empno,ename=e.ename,job=e.job,mgr=e.mgr,hiredate=e.hiredate,sal=e.sal,co mm=e.comm,deptno=e.deptno when not matched then insert(empno,ename,job,mgr,hiredate,sal,comm,deptno) values(e.empno,e.ename,e.job,e.mgr,e.hiredate,e.sal,e.comm,e.deptno); وجزاكم الله خيرا تقديم بلاغ
بتاريخ: 22 فبراير 200817 سنة comment_123003 بسم الله الرحمن الرحيمالخطأ هنا إن انتى المفروض فى الـupdate ماتعمليش update للـprimary key لأنه موجود بالفعل .يعنى when matched معناها إذا تساوى الـprimary key مع الـprimary key إذاً الـحقهةشقغ نثغ موجود فى الجدولين .إذاً لا يصح إن انا أضيف هذا العمود وهو الـempno معايا فى الـupdate .يبقى الكود هيبقى كده merge into employees m using emp e on (m.empno=e.empno) when matched then update set ename=e.ename, job=e.job,mgr=e.mgr,hiredate=e.hiredate, sal=e.sal,comm=e.comm,deptno=e.deptno when not matched then insert(empno,ename,job,mgr,hiredate,sal,comm,deptno) values (e.empno,e.ename,e.job,e.mgr,e.hiredate,e.sal,e.comm,e.deptno) تقديم بلاغ
بتاريخ: 23 فبراير 200817 سنة كاتب الموضوع comment_123026 جزاك الله خيرا فعلا كده ودلوقتي ضبطتي معايا تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.