بتاريخ: 17 مايو 200916 سنة comment_157210 انواع الـ Cursor -----------------هناك نوعين من الـ Cursors 1- implicit Cursor وهذا النوع يعرف مباشرة دون ان نقوم نحن بتعريفه فهو يعرف مباشره عندما نقوم بتنفيذ اي استعلام حيث يتم حجز منقطه في الذاكره تحت تسميه معينه وتوضع فيها كل البيانات الناتجه من الاستعلام ثم يتم عرضها في الشاشه او التقرير .فعندما تقوم بفتح ال Sql * plus ثم تقوم بكتابه الاستعلام الاتي (select empno, ename , sal from emp ) فانه يتم تعريف Cursor ضمني توضع فيه كل السجلات الناتجه من الاستعلام ثم يتم بعد ذلك عرض السجلات سجل سجل باستخدام الـIndex .2- Explicit Cursor وهذا النوع يتم تعريفه من قبل المستخدم عندما يحتاج الى التعامل مع اكثر من سجل . وهذا النوع سوف نتطرق لشرحه بصوره مفصله عندما نحتاج للتعامل مع اكثر من سجل من البيانات من داخل برنامج PL/SQL .مثال: Declare Cursor C1 is select empno, ename , sal from emp; v_empno emp.empno%type; v_ename emp.ename%type; v_sal emp.sal%type; Begin Open C1; Dbms_Output.put_line ('empno ' || ' ename ' || ' salary '); Loop Fetch C1 into v_empno, v_ename , v_sal; Exit when C1%notfound; Dbms_Output.put_line ( v_empno || ' ' || v_ename || ' ' || v_sal ); End loop; Close C1; End; / بالتوفيق تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.