بتاريخ: 20 أكتوبر 201411 سنة comment_255953 عندي جدولين واحد فيه ارقام الطلاب في كل صف وتوزيعهم عالفصول الطالب في الصف الاول شعبة ا مثلا وجدول تاني فيه مواد كل سنه دراسيه يعني مواد السنه الاولى كلها مواد السنه التانيه المطلوب اني احمل المواد بتاعة السنه الدراسيه لكل طالب في كل فصل حاولت اعملها بكرسور كالاتي create or replace function tr7eel_mwad(gradenum number ,subgradenum varchar2) return number as i number:=0; cursor c1 is select std_no,SUB_GRADE_NO from daTABASENAME.STD_DATA where fin_year=2014 and grade_no=gradenum and SUB_GRADE_NO=subgradenum ; cursor c2 is select GRP_NO,SGRP_NO,SKL_NO ,SKLGRP_NO from DBNAME.skl_grd where grp_no=gradenum and fin_year=2014 ; begin for x in c1 loop for y in c2 loop insert into SKL_DATA (fin_year,std_no,grp_no,sgrp_no,skl_no,sklgrp_no,SUB_GRADE_NO) values(2014,x.std_no,y.grp_no,y.sgrp_no,y.skl_no,y.sklgrp_no,x.SUB_GRADE_NO); commit ; end loop ; end loop ; i:=sql%rowcount ; return i ; end ; بيطلع ارور لان الانسيرت بيحصل وقت السلكت حد عنده فكره ممكن اعملها ازاي بنفس فكرة الكيرسور دي ؟/ تم تعديل 20 أكتوبر 201411 سنة بواسطة Ahmad.Hasan تقديم بلاغ
بتاريخ: 20 أكتوبر 201411 سنة comment_255960 ايه الايرور الي بيطلع TABLE IS MUTATING ؟ يا ريت تحطي الـ TABLES STRUCTURES , وتوضحي الكلام شوية تقديم بلاغ
بتاريخ: 20 أكتوبر 201411 سنة كاتب الموضوع comment_255963 ايه الايرور الي بيطلع TABLE IS MUTATING ؟ يا ريت تحطي الـ TABLES STRUCTURES , وتوضحي الكلام شوية لالالا شكرا هي الفنكشن صحيحه مفيهاش مشاكل انا كنت بناديها ب select function_name from dual فكانت بترمي ارور لو عملتها declare l number begin l:=function_name() end ; هتشتغل شكرا لتعبك تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.