ab0_s3d بتاريخ: 19 مايو 2005 تقديم بلاغ مشاركة بتاريخ: 19 مايو 2005 السلام عليكم ورحمة الله وبركاتهانشأة عمود في جدول ال emp باسم stars و اريد ان اضيف * في العمود stars لكل 100 من راتب الموظف.لنفرض ان الموظف راتبه 1000 هذا يعني انه سيحصل على * * * * * * * * * * حاولت كتابة الكود وتوصلت الى الكود التالي لا كنه اضاف ال * لكل الموظفين على حسب راتب اول موظففبما ان اول موظف راتبه 800 و يستحق 8 من * فالكود اعطى كل الموظفين 8 من *اتمنى اني وضحت ما اريد من الكود - و الخطأ الذي وقعت فيهو اتمنى منكم المساعدة في التصحيح declare no emp.empno%type:=&no; a_sal number(7); b_sal number(7); v_sta varchar2(50):=' '; cursor sal_emp is select sal from emp; begin open sal_emp; fetch sal_emp into a_sal; b_sal:=(a_sal-50)/100; dbms_output.put_line(b_sal); for i in 1..b_sal loop v_sta:=v_sta||'*'; end loop; dbms_output.put_line(v_sta); update emp set stars=v_sta; close sal_emp; end; / اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
basel_r بتاريخ: 19 مايو 2005 تقديم بلاغ مشاركة بتاريخ: 19 مايو 2005 brother see solutiondeclareno emp.empno%type;a_sal number(7);b_sal number(7);v_count number:=0;v_sta varchar2(50):=' ';cursor sal_emp isselect sal,emp_nofrom emp; begin open sal_emp;loopfetch sal_emp ,emp_no into a_saln,no; b_sal:=(a_sal)/100;dbms_output.put_line(b_sal);for i in 1..b_sal loopv_sta:=v_sta||'*';end loop;v_count:=v_count+1;dbms_output.put_line(v_sta);update empset stars=v_stawhere emp_no=no;exit when v_count >= sal_emp%rowcount;end loop;close sal_emp;end;/ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ab0_s3d بتاريخ: 20 مايو 2005 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 20 مايو 2005 الكود فيه اكثر من خطاء تاكد من صحه الكود الله يعافيك..اشكرك على المحاولة اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.