omar_oracle بتاريخ: 9 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 9 سبتمبر 2010 الأخوة الكرام السلام عليكم ورحمة الله وبركاتهلدي cursor لا يقوم بأرجاع كل البيانات المتعلقة بطالب معين ... انما يرجع قيمة واحدةهذا هو: declare cursor curs is select TEST_STUD_CRSE_REG.stud_id,TEST_STUD_CRSE_DETAIL.crse_no, TEST_COURSES.CRSE_TYPE,TEST_STUD_CRSE_DETAIL.CRSE_TYPE_DESC, TEST_STUD_CRSE_DETAIL.term from TEST_STUD_CRSE_REG,TEST_STUD_CRSE_DETAIL,TEST_COURSES where (TEST_STUD_CRSE_REG.stud_id =:TEST_STUD_CRSE_REG.stud_id) and (TEST_STUD_CRSE_DETAIL.stud_id =:TEST_STUD_CRSE_REG.stud_id) and (TEST_STUD_CRSE_DETAIL.term = TEST_STUD_CRSE_REG.TERM ) and (TEST_COURSES.CRSE_NO = TEST_STUD_CRSE_DETAIL.CRSE_NO) and (TEST_STUD_CRSE_DETAIL.CRSE_TYPE = TEST_COURSES.CRSE_TYPE); studid number(8); crseno number(6); --crsename varchar2(20); crsetype number(1); crsetypedesc varchar2(15); term number(5); -- crsetime varchar2(10); begin open curs; loop fetch curs into studid,crseno,crsetype,crsetypedesc,term; exit when curs%notfound; :TEST_STUD_CRSE_DETAIL.STUD_ID :=studid; :TEST_STUD_CRSE_DETAIL.crse_no :=crseno; --:TEST_STUD_CRSE_DETAIL.crse_name :=crsename; :TEST_STUD_CRSE_DETAIL.crse_type :=crsetype; :TEST_STUD_CRSE_DETAIL.crse_type_desc :=crsetypedesc; :TEST_STUD_CRSE_DETAIL.term :=term; --:TEST_STUD_CRSE_DETAIL.crse_time :=crsetime; end loop; end; لا اعرف ما المشكلة والله حيرني ... انا استعمل ماستر ديتيل بلوكاتمنى منك المساعدة لو سمحتمالسلام عليكم cursor issue.rar اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ammarcontrol بتاريخ: 9 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 9 سبتمبر 2010 هل تاكدت من الجداول تحتوي بيانات؟؟ اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ammarcontrol بتاريخ: 9 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 9 سبتمبر 2010 ارسلي الفورم و ملف ال DMP و ان شاء الله احلها لك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Amgad بتاريخ: 9 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 9 سبتمبر 2010 السلام عليكم ورحمة الله اضف امر NEXT_RECORD; قبل انهاء ال loop ... end loop; اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ammarcontrol بتاريخ: 9 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 9 سبتمبر 2010 كلامك مضبوط اخي امجد و انا اسف لم انتبه بانه لم يضع عباره next_record اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
tekamoka بتاريخ: 13 سبتمبر 2010 تقديم بلاغ مشاركة بتاريخ: 13 سبتمبر 2010 الاخ العزيز يستحسن ان تستخدم for حيث انها تقو م بفتح ال cursor و عمل لوب داخلة و تغلقة حين تصل الى اخر ريكورد.لان الكود الذى قمت بكتابته ناقص close_cursor لان لو مكتبتش الجملة دى الكيرسور هيفضل مفتوح فى الميمورى و هيدى bad performanceو فى الحالة بتاعتك يستحسن انك تبنى البلوك على الجملة كاملة (block in join) و تقوم بعمل سيت للوير كل مرة بتعمل رن. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.