الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Function&cursor

Featured Replies

بتاريخ:

السلام عليكم
عندي بعض الاسئلة وانشا الله الاقي اجابة ويستفيد الجميع
1- كيف يعمل الاقتران intsr
2-ماذا يعني ref curosr وكيف نستخدمة
3- ماذا يعني type t is TABLE of emp%rowtype index by binary_integer
وكيف استخدمة.
4- ما مبدأ عمل الكيرسرات التالية وماذا تعني بالضبط
cursor c1 is select ........etc
where ....etc
for update;
----------------------------------------
cursor c1 is select ........etc
where ....etc
for update of salary,ename;
----------------------------------
update emp
set salary =salary +10
where current of cursor_name
ارجو ان نجد الاجابة لكي نستفيد الجميع منها وبارك الله فيكم

بتاريخ:

اخى العزيز ... انا هرد على سؤالين فقط و سأترك الباقى لكل من يحب ان يرد لتزيد مساحة النقاش و لا تكون قاصرة على فرد واحد او اتنين
و انا اخترت انى ارد على اقوى سؤالين ( و هما سؤال 2 ولا 3 ) .

1- بالنسبة للسؤال الأول فقد سبق و قمت بشرحة لأحد الأخوة و هذا هو اللنك
http://www.araboug.org/ib/index.php?showtopic=13225
و يمكننا اعتبار ان ال Ref Cursor احد اركان ال دينمك سكول لأنة دينمك بالفعل .

2- اما بالنسبة للسؤال الثانى فهناك مبدأ اسمة (Table Of Record ) ... اى انة تقوم بعمل جدول مكون من عمود واحد بداتا تيب واحد و مقسم رقميا ( 1 2 3 .................. ) ( Index by binary integer ) .. و لو حبينا نكبرة شوية ممكن نقول ان نوعة من نوع كرزر معين او جدول معين او فرجول ركورد معين ( زى ما تحب ) و بكدة نقدر نقطعة بعدد اعمدة الكرزر او الجدول الى انا قلتلة من نوعة و تتم عملية مناداة حقول هذا الجدول الوهمى كالأتى . tab_name(number or counter).col_name_from cursor_or_table_or_virtual_record

** من هنا تم عمل فكرة Block From Procedure **

مثال على ذلك
---------------
DECLARE
CURSOR name_cur IS
SELECT last_name
FROM student
WHERE rownum <= 10;

TYPE last_name_type IS TABLE OF student.last_name%TYPE
INDEX BY BINARY_INTEGER;
last_name_tab last_name_type;

v_counter INTEGER := 0;
BEGIN
FOR name_rec IN name_cur LOOP
v_counter := v_counter + 1;
last_name_tab(v_counter) := name_rec.last_name;
DBMS_OUTPUT.PUT_LINE ('last_name('||v_counter||'): '||
last_name_tab(v_counter));
END LOOP;
END;

و الله اعلم

Oracle ITself

تم تعديل بواسطة oracle_itself

بتاريخ:

اخي الكريم
بالنسبة الى 1- كيف يعمل الاقتران intsr



راجع هذا الرابط

http://www.araboug.org/ib/index.php?showtopic=13509

بتاريخ:

الاخ السائل, بالنسبة لل cursor for update و where current of يستخدمان لمنع اي مستخدم اخر يحاول تعديل اي سجل تعمل عليه.

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.