منولة بتاريخ: 23 ديسمبر 2008 تقديم بلاغ مشاركة بتاريخ: 23 ديسمبر 2008 -عرض اسم الإدارة رقم 10 ؟مؤشر بسيطdeclare 2 x varchar2 (20); 3 cursor mm is 4 select dname from dept 5 where deptno=10; 6 begin 7 open mm ; 8 fetch mm into x ; 9 dbms_output.put_line(x); 10 close mm; 11 end ; 2-تعديل في رواتب الموظفين الذين على وظيفة 'CLERK' لتصبح جميعها 2000 ؟ 1 declare 2 salary emp.sal %type; 3 jobing emp.job %type; 4 cursor mm is 5 select sal , job from emp; 6 begin 7 open mm; 8 loop 9 fetch mm into salary ,jobing; 10 exit when mm %notfound; 11 if jobing ='CLERK' then 12 update emp 13 set sal=2000 14 where salary=sal; 15 end if; 16 end loop; 17 close mm; 18* end ;عمل مؤشر يقوم بعرض الراتب والعمولة بحيث اذا كان الراتب 1000 يضع العمولة 200 واذاكان الراتب 2000 يضع العمولة 200وغير ذلك يضع العمولة null? 1 declare 2 salary emp.sal %type; 3 commiton emp.comm %type; 4 cursor mm is 5 select sal , comm from emp; 6 begin 7 open mm; 8 loop 9 fetch mm into salary,commiton; 10 exit when mm %notfound; 11 if salary =1000 then 12 update emp 13 set comm=200 14 where salary=sal; 15 elsif 16 salary =2000 then 17 update emp 18 set comm=200 19 where salary=sal; 20 else 21 update emp 22 set comm= null; 23 end if; 24 end loop; 25 close mm; 26 end ;حذف الموظفين الذين على وظيفة CLERK فقط للمؤظف الذي يحمل اسم SMITH ? ودا معرفتش اعمله اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
shadi_jaber بتاريخ: 23 ديسمبر 2008 تقديم بلاغ مشاركة بتاريخ: 23 ديسمبر 2008 السلام عليكم و رحمة اللهما في داعي عمل مؤشر في الفرع 1 ، 2 حيث أن : -عرض اسم الإدارة رقم 10 ؟SELECT dname FROM dept WHERE deptno = 10; أما بالنسبة :2-تعديل في رواتب الموظفين الذين على وظيفة 'CLERK' لتصبح جميعها 2000 ؟ UPDATE emp SET sal = 2000 WHERE ename = 'CLERK'; أما بالنسبة للفرع الثالث فهو صحيح مع إجراء بعض التعديلات 11 if salary =1000 then 12 update emp 13 set comm=200 14 where salary=sal; 15 elsif 16 salary =2000 then 17 update emp 18 set comm=200 19 where salary=sal; 20 else 21 update emp 22 set comm= null; 23 end if; يصبح كالتالي :IF salary IN ( 1000 , 2000 ) THEN UPDATE emp SET comm = 200 WHERE sal = salary; ELSE UPDATE emp SET comm = NULL END IF; أما بالنسبة للسؤال الأخير : حذف الموظفين الذين على وظيفة CLERK فقط للمؤظف الذي يحمل اسم SMITH ? ودا معرفتش اعمله الحل كالتالي : DELETE FROM emp WHERE JOB = 'CLERK' AND ENAME = 'SMITH'; وشكرا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
منولة بتاريخ: 23 ديسمبر 2008 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 23 ديسمبر 2008 الف شكر ليكبس هي طالبة الحل يكون بمؤشر عشان الدرس عن المؤشر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.